Re: how to get var name and value from function?
| From: | Tijnema ! | Date: | Mon, 16 Apr 2007 15:17:54 +0000 |
| Subject: | Re: how to get var name and value from function? | ||
| References: | 1 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-253013@lists.php.net to get a copy of this message | ||
On 4/16/07, Ford, Mike <M.Ford@leedsmet.ac.uk> wrote:
On 14 April 2007 13:16, Afan Pasalic wrote: Tijnema ! wrote:What's the sense in above function? you're putting the variables from 1 array in another... you could use array_merge for this. But even then it's quite useless...On 4/14/07, Afan Pasalic <afan@afan.net> wrote:yup! it's print error. I meant $array.function value2var($array, $print=0) { foreach ($_POST as $key => $value)I think you should change above line to : foreach ($array as $key => $value)after 2 hours of testing and research I realized this too, but want to be sure. :-( If you really *must* do this yourself (but others have pointed out the folly of it), this would do it: function value2var($array) { foreach ($array as $key => $value) {{Uhm, it's not even possible when you don't know the keys i believe.${$key} = $value; echo ($print ==1) ? $key.': '.$value.'<br>'; // to testresults and seeing array variables and values } } value2var($_POST, 1); but, I don't know how to get info from function back to script?!?!? :-($GLOBALS['$key'] = $value;} }
... or, alternatively, rather than defining you own function, use extract() (http://php.net/extract) with one of the overwrite safety options to avoid blobbing existing variables.That's a better idea. :)
Personally, I'd never do this in any form -- if I do it at all, I extract specific indices of the array with code like: foreach (array('name', 'address', 'email', 'setting1', 'setting2') as $key): $GLOBALS[$key] = $array[$key]; endforeach;endforeach? never heard of that statement before, does it really exist in PHP?
... making certain, of course, that those values get properly validated elsewhere. Cheers! MikeSure, you should always validate your variables, but i would recommend to only get the variables from $_GET/$_POST that you actually gonna need, and not just everything. Tijnema