$arr = eval("array('foo'=>'bar');");
// returns null
var_dump($arr);
配列ではなく null を取得した理由を誰か説明してもらえますか?
return
配列が必要です。
ドキュメントから:
eval()
NULL
が評価されたコードで呼び出されない限り戻ります。return
その場合、に渡された値return
が返されます。
したがって、次のことを行う必要があります。
$arr = eval("return array('foo'=>'bar');");
もしかして
eval("\$arr = array('foo'=>'bar');");
var_dump($arr);
eval 関数は、与えられた php コードを実行します。コードは何も返さないため、null が返されます。配列を返し、次のような変数に格納する必要があります。
$arr = eval("return array('foo'=>'bar');");