0

これはアマチュアの質問です(本当に明白な何かを見落としている場合は事前にお詫びしますが、いくつかの手がかりを求めてPHP.netを探していましたが、まだ理解していません)、他の誰かが友人のサイトや種類のために行ったこのコードを解読しています迷子になりました。

コードが実行しているのは、データベースの配列を作成することです。その後、サイトはタイムスタンプと並べ替えに基づいて情報をコールバックします。なんらかの理由で表示されないものがあるので、頭を悩ませようとしています。

$TYPES_EXPO = array("Type1","Type2","Type3","Type4","Type5","Type6","Type7");

$currentarray = $debe->runSql("SELECT * FROM expositions WHERE from<='$nu' AND to>='$nu' ORDER BY from");

if(count($currentarray)>0)
    echo "<h1>Current Exhibitions</h1>";

for($i=0; $i<count($currentarray);$i++)
{
    echo "<b>" . $currentarray[$i][3] . "</b>";

その最後の行で、[3]は何を参照していますか?コードの他の部分にはもっと多くのことがあります。[6]や[7]のような異なる整数は、私には恣意的であるように見えますが、私には指が触れないようです…</ p>

4

2 に答える 2

1

$debe->runSql呼び出しがレコードの配列を返しているのではないかと思います。[3]はリターンの3番目の列です。

データベーステーブルの3番目の列である可能性があります。ただしSELECT * FROM、3番目の列が同じになる保証はありません。あなたはそれをに変更したいと思うでしょうSELECT first, second, third FROM

繰り返しますが、これはhttp://php.net/manual/en/function.mysql-fetch-row.php$debe->runSqlに似たものを返すことを前提としています。

于 2013-02-12T16:28:24.453 に答える
0

3 は、多次元配列内の 4 番目の要素 (0 は最初の要素) を参照してい$currentarrayます。

たとえば、配列があります$person

mike
    male
    blue
    75
    31
jack
    male
    brown
    80
    21

$person[1][3]整数 21 を参照します。

これが役立つことを願っています:)

//編集: ヒントとして、foreach で count() を使用しないでください。数千の配列項目がある場合に関数が千回呼び出されないように、事前に変数を割り当てます。

于 2013-02-12T16:25:06.870 に答える