Php оценивает строку как переменную и извлекает ее значение

<?php
$i=2;
$teststring='$_SESSION["REGISTERED"]["FirstName'.$i.'"]';
var_dump($teststring);
die;
if(isset(($teststring))){
//do something
}
?>

В приведенном выше коде я хочу найти значение $_SESSION["REGISTERED"]["FirstName2'] переменная, мне нужно предложение / трюк

0

Решение

Почему не просто

$foo = $_SESSION['REGISTERED']["FirstName$i"];

Ключи массива — это просто строки, и они МОГУТ генерироваться динамически. В PHP нет абсолютно никакой разницы между этими двумя:

$foo = array('bar' => 'baz');
$x = 'bar';

echo $foo[$x];
echo $foo['bar'];

оба будут выводить baz,

2

Другие решения

Вам не нужна дополнительная цитата для FirstName:

$teststring=$_SESSION["REGISTERED"]["FirstName".$i];

будет просто работать.

0

По вопросам рекламы [email protected]