PHPで配列を事前に定義する必要はないと思いました
-
26-10-2019 - |
質問
そこで、各エントリを手動で追加することにより、配列を作成しました。
$Sections[] = "A.1.4.1";//900 0 900 0 900 900 888 800 800 913 900 900 900
$Sections[] = "A.1.4.2.1";// 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 994 976 954 900 846 779 516 430 344 328 239 150
$Sections[] = "A.1.4.2.2";//900 900 900 900 900 900 900 900 900 900 850 800 750 700 650 600 550 500 376 356 336 227
$Sections[] = "A.1.4.2.3";//1000 1000 1000 1000 900 900 1000 1000 1000 1000 893 803 763 492 516 491 336 336 240 24
$Sections[] = "A.1.4.3";//1000 1000 879 588 560 366 192 867 807 665
$Sections[] = "A.1.4.4";//1000 1000 1000 1000 994 864 620 456 1000 1000 1000
$Sections[] = "A.1.5.1";//900 0 900 800 464
$Sections[] = "A.1.5.2";//a 1000 1000 846 240
$Sections[] = "A.1.5.2";//b 900 900 700 356
$Sections[] = "A.1.5.3";//1000 879 192
$Sections[] = "A.1.5.4";//1012 922 456
//EU_A
$Sections[] = "A.2.5.1";//a 1048 1048 1048 1048 1004 800 576 378
$Sections[] = "A.2.5.1";//b 1048 1048 1048 1048 1004 820 592 384
$Sections[] = "A.2.5.2";//a 1048 1048 964 828 672 504 340
$Sections[] = "A.2.5.2";//b 1048 1048 972 836 696 536 376
$Sections[] = "A.2.5.3";//a 1048 1048 1048 1048 1004 800 576 378
$Sections[] = "A.2.5.3";//b 944 944 944 944 944 820 592 384
$Sections[] = "A.2.5.3";//c 1048 1048 1048 1048 1004 820 592 384
$Sections[] = "A.2.5.4";//a 1048 1048 1048 910 776 560 308
$Sections[] = "A.2.5.4";//b 944 944 944 928 804 588 348
$Sections[] = "A.2.5.4";//c 1048 1048 1048 928 804 588 348
$Sections[] = "A.2.7.1";// 560 504 424 304 240 200
$Sections[] = "A.2.7.2";// 520 448 416 360 312 280
//EU_B
$Sections[] = "B.2.4.1";
$Sections[] = "B.2.4.1";
$Sections[] = "B.2.4.2";
$Sections[] = "B.2.4.2";
$Sections[] = "B.3.4.1";
$Sections[] = "B.3.4.1";
$Sections[] = "B.3.4.2";
$Sections[] = "B.3.4.2";
//TR-114
$Sections[] = "A.2.1";
$Sections[] = "A.2.2";
(コメントを無視することができます。これは文字通り私のコードからカットと貼り付けでした)
私が抱えている問題は、私がそうするときです
return $Sections;
そして、任意のインデックスを参照してみてください。私は、それが非初期化されていないことについてのエラーが得られます。
しかし、もしそうなら
$return[] = $Sections;
return $return;
インデックスを簡単に参照できます。
配列のドキュメントを徹底的に読みましたが、なぜこれを行うのかわかりません。私はそれが機能することを知っています、私はちょうどその理由を知りたいです。
$セクション配列が$ returnアレイに渡された場合、インデックスは何らかの形で「更新」または「更新」されると仮定することができます。
編集:これは関数内であり、内部で作成された配列を返すことを忘れていました。私は誰もがそれをかなり速く把握していたと確信しています。
解決
インデックスにアクセスしようとしている場合 $Sections["B.2.4.1"]
, 、それはあなたがそれらを定義した方法ではないので、それは機能しません。を使用して []
構文アレイに追加するには、数値インデックスを作成しています。
あなたの配列は本当に次のように見えます、それぞれ []
数値インデックスで配列の最後に追加されました:
$Sections[0] = "A.1.4.1";
$Sections[1] = "A.1.4.2.1";
// etc
他のヒント
コードでインデックスを指定しているわけではありません。 []
表記は、PHPが要素を挿入することを意味します 最後に 配列の、新しい数値インデックスを割り当てます。
所属していません StackOverflow