Re: function -> action
| From: | Ken Tozier | Date: | Fri, 03 Aug 2007 14:29:57 +0000 |
| Subject: | Re: function -> action | ||
| References: | 1 2 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-260131@lists.php.net to get a copy of this message | ||
On Aug 3, 2007, at 9:39 AM, Ken Tozier wrote:
On Aug 3, 2007, at 2:38 AM, Ralph Kutschera wrote:Actually, this might be better as it makes no assumptions about the function's argument list. function action() { $func = func_get_arg(0); $expr = func_get_args(); $expr = array_slice($expr, 1); $expr = implode(', ', $expr); $expr = $func.'('.$expr.');'; return eval($expr); } You lose the ability to pass by reference but that might not be important for your script.Hallo! I'm working on a project, where we distinguish between "functions" and "actions" in design, although in PHP both are implemented as functions. Is there a chance that PHP can use the word "action" as "function"? E.g.: public function doSomething() { .... } public action doSomethingElse() { ... } ... is actually the same but would help to see the design also in the code.You could define a generic action function function action($funcName, $funcArgs) { return $funcName($funcArgs); }
and use it on any function you want to use as an action function function printColor($color) { echo 'color: '.$color.'<br>'; } function printArea($width, $height) { echo 'area: '.($width * $height).'<br>'; } action('printColor', 'blue'); action('printArea', 3, 5); You could then pass in any function that is visible to the action function. You lose some efficiency but get your action function Then again, you could also just prepend action functions with 'action_'TIA, Ralph --PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php--PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php