0

3 レベルの配列を作成してから、3 番目のレベルの配列データを取得しようとしていますが、どういうわけかこれを取得します。

$project = array();
$project[] = "name";
$project[] = "id";
$project["id"] = "AXA";
$project["id"]["AXA"] = "a new project";
echo $project["id"]["AXA"];

私が得る結果aは、a new project

文字列全体を取得するにはどうすればよいですか?

4

2 に答える 2

1

コードでは、次のような代入として多次元配列を使用する必要があります

$project = array (
    'name',
    'id'=>array(
        'AXA'=>'a new project'
    ) 
);
于 2013-03-08T03:25:42.960 に答える
0

これvar_dumpがあなたのコードです:

配列(3) {
  [0]=>
  文字列(4)「名前」
  [1]=>
  文字列(2)「ID」
  ["id"]=>
  文字列(3) "aXA"
}

実際に新しいレベルを作成しているわけではありません。あなたがする必要があるのは、2番目の配列を初期化することです:

$project = array();
$project[] = "name";
$project[] = "id";
$project["id"] = array(); //here
$project["id"]["AXA"] = "a new project";

それ以外の場合は、値を上書きしますAXA

配列(3) {
  [0]=>
  文字列(4)「名前」
  [1]=>
  文字列(2)「ID」
  ["id"]=>
  配列(1) {
    [「アクサ」]=>
    string(13) "新しいプロジェクト"
  }
}
于 2013-03-08T03:11:53.817 に答える