私はジレンマに陥っています。配列をトラッキングするための関数を作成しようとしていますが、この場合はセッション配列です。配列を使った動的検索
array('First' => array('Second' => array('Third' => 'TEST VALUE'));
:今ではここで私は
public static function get($search = 'First/Second/Third') {
$explode = explode('/',$search);
$count = count($explode);
if ($count == 1)
if (isset($_SESSION[$explode[0]]))
return $_SESSION[$explode[0]];
elseif ($count == 2)
if (isset($_SESSION[$explode[0]][$explode[1]]))
return $_SESSION[$explode[0]][$explode[1]];
elseif ($count == 3)
if (isset($_SESSION[$explode[0]][$explode[1]][$explode[2]]))
return $_SESSION[$explode[0]][$explode[1]][$explode[2]];
}
それでは、私は配列を持っているとしましょうしているものだ...私の問題は、動的にこれを行うことができるようにすることで、
私の問題ではありません今すぐ電話したいと思っています
$value = get('First/Second/Third');
次に、「テスト値」をmy $ value変数の値として戻します。それが動作します。この状況で
、それだけで動的ではない、と私はより多くの行を追加することなく、同様に多分10層の深配列を扱うことができるようにしたい....
まあ、もっと賢い人がいるかもしれません:)
ありがとう!!このような
これは素晴らしい解決策です。私はこの問題が一度起こったときに私がeval()に再発したことを認めて恥ずかしいです。 – Andri
しかし、なぜ '' $ data = isset($ data [$ key])? '' $ data = $ data [$ key] ''の代わりに$ data [$ key]:null''を使用しますか?そのようなキーがない場合、 '' $ data''はnullになりますか? – mzedeler
素晴らしい!!!!私はこの素敵で清潔な解決策を愛しています、それは単に完璧です!ありがとう! –