1

私はこのような配列を持っています:

[0] => [basketball][player]
[1] => [basketball][threes][player]
[2] => [basketball][home][leaders][player]
[3] => [basketball][away][leaders][player]

各要素を連想配列内の特定の要素への参照に変換したい:

$post['basketball']['player']
$post['basketball']['threes']['player']
etc.

前者を後者に自動的に翻訳する方法はありますか? あれば超便利だし、そうでなければ超不便だと思うので、何か方法があればいいのですが、どうなるかはわかりません。

4

1 に答える 1

2

私は次のように言います。

  • [先頭と]末尾の を剥ぎ取ります( を使用substr)
  • explode文字列を分割するために使用します][
  • 配列へのキーとして使用して、分解されたピースをループします。

だから、このようなもの:

$array = ..... // the big array
$str = "[basketball][player]";
$keys = explode("][",substr($str,1,-1));
$pos = $array; // PHP does a lazy copy, so there is no performance issue here
while($key = array_shift($keys)) $pos = $pos[$key];
// $pos is now your target element
于 2012-07-06T17:34:51.477 に答える