3

親配列のセルに格納されている配列から単一の要素をエコーし​​ようとしています。読みやすくするために、親配列を $parent 、子配列を $child と呼びます。$child の 2 番目の要素をエコーし​​たい。コードを使用する場合:

echo "$parent[0][1]";

配列から文字列への変換エラーに続いて、テキスト "[1]" が表示されます。私が理解しているように、「$parent[0]」は $child として解釈する必要があるため、次の [1] は $child から 2 番目の要素を要求します。明らかに、これは発生しておらず、読み取られている唯一の部分は $parent[0] であり、その要素が配列であるため、その後スローされます。

また、私の $parent 配列は、テーブルからデータを取得するループ関数によって入力されるため、その要素を数値形式のままにしておく方が簡単です。具体的には、$parent の各要素は、ゴルフのラウンドでいっぱいのテーブルから取得された、ゴルフのラウンドの ID 番号と日付を保持します。私の関数は、mysql_query を使用してそれらをプルし、mysql_get_row をループしてから、$parent 配列に格納します。

ここには不必要な情報がたくさんあることは承知していますが、私の特定の状況では実行できない解決策を回避するのに役立つことを願っています. 私の基本的な質問は、別の配列内にネストされた配列から要素をエコーする方法です。

前もって感謝します。

回答後に編集

以下の回答は完全に機能しますが、汚い回避策も見つけました。$child 配列をプレースホルダーに割り当ててから、プレースホルダーから印刷することはできますが、さらに数行のコードが必要で、見栄えがよくありません。

例えば。

$holdArray = $parent[0];
echo "$holdArray[1]";

迅速で役立つ回答をありがとうございました。いつものように SE コミュニティがやってきます。

4

3 に答える 3

1

試してみてください

echo "{$parent[0][1]}";

デモ: http://codepad.org/bAfbg1Fh

于 2013-03-07T00:54:38.753 に答える
1

echo "{$parent[0][1]}";またはecho $parent[0][1];動作するはずです

または、配列が連想試行の場合: echo "{$parent['foo']['bar']}";ORecho $parent['foo']['bar'];

于 2013-03-07T00:57:10.903 に答える
1

配列に多くのサブ配列が含まれていて、それぞれを表示したい場合の別の解決策を次に示します。

foreach($parent as $child){
   echo $child[1];
   echo "<br>";
}

配列に子配列が 1 つしか含まれていない場合は、次のように実行できます。

$array = array(array(1,'edwards',"somesong.mp3"));
list($child) = $array;
echo $child[0]; // this will print 1

また

echo $parent[0][1];
于 2013-03-07T05:05:11.383 に答える