note 7961 modified in function.call-user-func by danbrown

From: Date: Sat, 19 Jul 2008 21:17:29 +0000
Subject: note 7961 modified in function.call-user-func by danbrown
References: 1  Groups: php.notes 
Request: Send a blank email to php-notes+get-141751@lists.php.net to get a copy of this message
Let say we construct somehow the name of the function. In some cases we can use nested 'switch' but the alternative is to to use for and parse a string to construct the function name, after than we also can construct and the parameter(s) for it. It is like using of eval. I use it in one of my projects to construct a name of nested array like $ar['1999'['july']['29']['19'], etc. the problem is in that I'm parsing a string to construct the name. If I've {1:2:3} the array name will be $ar['1']['2']['3'] but if i've {1:2:3:4:5} it will be $ar['1']['2']['3']['4']['5']. Eval is the only way (very hard because of characters escaping is needed) to do it. So this function is of the type of EVAL(). USE IT wherever your script is 'self-modified'; --was-- Let say we construct somehow the name of the function. In some cases we can use nested 'switch' but the alternative is to to use for and parse a string to construct the function name, after than we also can construct and the parameter(s) for it. It is like using of eval. I use it in one of my projects to construct a name of nested array like $ar['1999'['july']['29']['19'] , etc. the problem is in that I'm parsing a string to construct the name. If I've {1:2:3} the array name will be $ar['1']['2']['3'] but if i've {1:2:3:4:5} it will be $ar['1']['2']['3']['4']['5']. Eval is the only way (very hard because of characters escaping is needed) to do it. So this function is of the type of EVAL(). USE IT wherever your script is 'self-modified'; http://php.net/manual/en/function.call-user-func.php

« previous php.notes (#141751) next »