これは奇妙なことです。何が起きているのか分かりません。値が存在してもキーでアクセスするとNULLを返す連想配列の要素
私は連想配列を$suppliers
という変数に格納しています。
これは少しvar_dump($suppliers)
をクリーンアップされています。私はそうのようなforeachループで会社要素にアクセスしようとしている
array(2) {
array(4) {
["Company"]=>
string(9) "Microsoft"
["Website"]=>
string(20) "http://microsoft.com"
["Brands"]=> ...
["Contacts"]=> ...
}
array(4) {
["Company"]=>
string(6) "Google"
["Website"]=>
string(17) "http://google.com"
["Brands"]=> ...
["Contacts"]=> ...
}
}
:
foreach($suppliers as $supplier):
var_dump($supplier['Company']);
endforeach;
をしかし、私はこのためにNULLを取得しています毎回の価値。他のすべての値は、ループ内からアクセスすることができます。
foreach($suppliers as $supplier):
var_dump($supplier['Company']);
var_dump($supplier['Website']);
endforeach;
戻り値:私は目に見えない文字、文字エンコーディングの問題、そして何のためにチェックしました
NULL
string(20) "http://microsoft.com"
NULL
string(17) "http://google.com"
は直接の値を出力するために動作するようです会社要素。
私が行う場合:
foreach($suppliers as $supplier):
foreach($supplier as $key => $value):
var_dump($supplier[$key]);
endforeach;
endforeach;
私は「会社」の要素を出力することができるよ、それはそれが動作する唯一の方法です。
どのような考えですか?要素キーに、このような問題を引き起こす可能性のある、不可視の文字やエンコードの問題以外のものがありますか?
やってみ 'エコーのvar_dump($:
これが私のために、以下の返しサプライヤー[0] ['Company']); '何かを返すかどうかを調べる。 – Condorcho