$data[result][open]
は、配列項目にアクセスするための正しい方法ではありません。
トークンresult
は定数のように見えます。 PHPはというconstantを検索します。見つからず、通知をトリガーします。 「プログラマーが'result'
(定数ではなく文字列)を書きたいと思っています。文字列として変換します。」代わりに'result'
を使用します。
これは機能しますが、それは恐ろしい習慣です。 PHPの歴史は20年前、it's not recommendedです。
配列のキーを正しく示すようにコードを修正した後、次のステップは、配列内の値にアクセスする多くのPHP方法の1つを選択することです。
することはでき機能reset()
を使用することによって、そのキー($data['result']['open']['12345-AAAAA-66AAKK']
)を知らなくても、配列の最初の値を取得する:
$datawanted = reset($data['result']['open']);
それとも、配列の値のみを取得する機能array_values()
を使用することができます( 01を維持するために
$values = array_values($data['result']['open']);
$datawanted = $values[0];
別のオプションは、あなたが必要としない場合:キーは無視され、返される配列には、値は、ご希望のデータは、この配列上の位置0
である)ゼロからインデックスされているされていますをさらに処理するには、PHP関数array_shift()
を使用して、配列から最初の値を削除して返します。そして最良の方法は、foreach
PHP文を使用することです
$datawanted = array_shift($data['result']['open']);
あなたが$data['result']['open']
のすべての値を処理する必要があります(そしておそらく行う)場合:この関数は引数として受け取り、配列を変更することを警告すること。これにより、配列の各要素のキーと値の両方にアクセスできます。
foreach ($data['result']['open'] as $key => $value) {
// $key is '12345-AAAAA-66AAKK'
$datawanted = $value;
}
何を求めようとしていますか? –
配列を扱う際に、キーが静的であることを確認することが好ましい。値は非静的にすることができる。 –
'array_keys()'を使ってキーを取得し、少なくともそれを使うことができる。 –