Reputation: 4696
I recently found another stackoverflow question with the following:
$segments = array(
"key1" =>"111",
"key2" =>"222",
"key3" =>"333",
"key4" =>"444"
);
I want to have these:
$key1 has the value of "111";
$key2 has the value of "222";
$key3 has the value of "333";
$key4 has the value of "444";
The answer was to use extract($segments)
.
I would like to achieve something not to dissimilar, I have the following array
$test = array('hello','world');
I ideally want to loop through them and use the array value as the variable name, for example:
$test2 = array('hello','world');
foreach($test as $v)
{
$$v = $v;
}
Therefore after the loop I could echo say $hello
and this would result in the output hello
.
Can anyone tell me how I could achieve this. If there is a method without a loop etc then great. I realise my example can be done differently so that this question is redundant, but I ask out of curiosity and for my knowledge.
Upvotes: 0
Views: 46
Reputation: 79024
Arrays are better and you rarely if ever need extract
or variable variables, but this is a way (just for knowledge sake):
$test2 = array('hello','world');
extract(array_combine($test2, $test2));
Upvotes: 2