variable named variable ($$)

here is what i am trying to do, which i thought i have done before but it does not seem to work.

$Foo= 'Bar';

$$Foo = '1';

if ($Bar == '1'){
//DO SOMETHING
} elseif ($OtherName == '1'){
//DO SOMETHING ELSE
}

basically i need to be able to set the name of a variable, then later on give it a value and test for the value. i will need the variables name to be able to be set to anything i want, because i will have a bunch of different if's at the end.

thank you
qwertqAsked:
Who is Participating?
 
dfu23Connect With a Mentor Commented:
http://us2.php.net/types.array

$Foo = array("Bar" => "1", "OtherName" => 1);

if ($Foo["Bar"] == "1") {
    // Do Something
}
elseif ($Foo["OtherName"] == "1") {
    // Do Something Else
}
0
 
dfu23Commented:
why not use an associative array/hash
0
 
qwertqAuthor Commented:
could you be more specific?
0
Cloud Class® Course: Certified Penetration Testing

This CPTE Certified Penetration Testing Engineer course covers everything you need to know about becoming a Certified Penetration Testing Engineer. Career Path: Professional roles include Ethical Hackers, Security Consultants, System Administrators, and Chief Security Officers.

 
snoyes_jwCommented:
Your code seems to function as written.  Try
echo $Bar;
to see if it got set correctly.
0
 
hendridmCommented:
Your code seems to work for me in 4.3.8:
<?
$foo = "bar";
$$foo = 1;

echo $bar; //Displays '1'
?>

Not sure which PHP you're using, but maybe this would work for you:
<?
$foo = "bar";
eval("\$$foo = 1;");

echo $bar; //Displays '1'
?>
0
 
mary_BECommented:
You might wanna try this :
${$Foo} = '1';
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.