2012-03-01 6 views
3
array(1) { [0]=> array(6) { ["id"]=> string(3) "275" ["course"]=> string(2) "92" 
["name"]=> string(33) "Tutorial - Transforming 2D Shapes" ["activitylink"]=> string(4) 
"2488" ["available"]=> string(10) "1330626600" ["deadline"]=> string(10) "1330630200" } } 

array(1) { [0]=> array(6) { ["id"]=> string(3) "422" ["course"]=> string(3) "130" 
["name"]=> string(8) "tester 2" ["activitylink"]=> string(1) "0" ["available"]=> 
string(10) "1330691375" ["deadline"]=> string(10) "1330694135" } } 

array(1) { [0]=> array(6) { ["id"]=> string(3) "423" ["course"]=> string(3) "132"  ["name"]=> string(10) "LessonName" ["activitylink"]=> string(1) "0" ["available"]=> string(10) 
"1330770900" ["deadline"]=> string(10) "1330781700" } } 

私はレッスンの配列とその情報を返す関数からデータを取得しています。なぜこの結合配列の値にアクセスできませんか?

私はvar_dump($lessonArray)を実行することができ、結果はここに貼り付けた出力のビットです。しかし、私は成功してavailableフィールドにアクセスしようとしています。 var_dump($lessonArray['available'])print_r($lessonArray['available'])を実行しましたが、返されるのはすべてNULLです。

+1

'print_r()'を使うのがおそらく良いでしょう。もっと洗練された、わかりやすい結果が得られます。 – Bojangles

答えて

4

投稿した3つのケースでは、実際にネストされた配列があります。 array(1) { [0]=>は、の最初の配列に0のキーが含まれていることを示します。そして、array(1) { [0]=> array(6)は、であり、第1の配列のキー0は第2の配列であることを示している。

したがって、$lessonArray[0]にすべきである:

array(6) { ["id"]=> string(3) "422" ["course"]=> string(3) "130" 
["name"]=> string(8) "tester 2" ["activitylink"]=> string(1) "0" ["available"]=> 
string(10) "1330691375" ["deadline"]=> string(10) "1330694135" } 

そして$lessonArray[0]['name'] 'テスター2' でなければならない、$lessonArray[0]['available']そうで '1330691375' であるとすべきです。

あなたはますprint_r($ lessonArray)の代わりvar_dump($lessonArray)を使用していた場合、あなたは違いを発見しただろう:)

だから私二JamWafflesはをしますprint_r使用するようにコメントし、私は私が本当にしたい場合を除き、自分自身がしますprint_rを好みます値の種類を慎重に調べる

+0

ねえ、そうです。それはネストされた配列でした。私が検索したデータはmysql_fetch_assoc($ result)からのもので、この関数がネストされた配列になっていると推測しています。データベースからデータを取得するときに、このレッスンのようにアクセスできる通常の配列を返すような方法がありますか?レッスン[0] ['avaiable']はちょっと混乱しているようです... – user1219572

+0

@ user1219572:ループではなく、mysql_fetch_assocを一度だけ使用してください。 – Ryan

+0

**これは、データベースからデータを取得する際に、レッスン['available']のようにアクセスできる通常の配列を返すための方法ですか?**私はあなたのコードを参照する必要があります。この質問を閉じて別の質問を開いて、そこにコードを貼り付けてください。 – jpic

0

これらはすべて単一要素配列内の配列です。 $lessonArray['available']の代わりに$lessonArray[0]['available']を使用するか、最初に要素0を取得してください。