0
$thearray = array
(
    //(0)ID, (1)NAME, (2)LOCATION, (3)PHONE
    array("0","Name 1","Nowhere 11","0004444"),
    array("1","Name 2","Everywhere 11","0005555"),
    array("2","Name 3","ThisPlace 11","0002222"),
    array("3","Name 4","NoPlace 11","0003333"),
    array("4","Name 5","ThatPlace 11","0001111")
);

これは、私が情報を保存するために使用した方法であり、それらを実行して必要なものを見つけ、たとえば次のように表示します

echo $thearray[$i][4]

その情報をMysqlに保存する以外は同じことをしたいこれは私が得た距離ですが、奇妙なエラーが発生し続け、配列から出力できません

これが私が得た距離です

$result = $db->query("SELECT * FROM table");
$thearray = array();
while($thearray = $result->fetch_assoc()){
   $thearray[] = $thearray;
}

何らかの理由で、これは私にとってはうまくいきません。上記のように 2 次元配列ではないようです。SI は、以前のように単純にエコーすることはできません。

4

1 に答える 1

0

さて、まずは

while($thearray = $result->fetch_assoc()){
    $thearray[] = $thearray;
}

配列を上書きし続け、非常に混乱します

while($row = $result->fetch_assoc()){
    $thearray[] = $row;
}

クエリから返された配列は単純な配列ではなく、連想配列です

つまり、次のようになります。

$new_array = array
(
//(0)ID, (1)NAME, (2)LOCATION, (3)PHONE
    array('ID' => "0", 'NAME' => "Name 1", 'LOCATION' => "Nowhere 11", 'PHONE' => "0004444"),
    array('ID' => "1", 'NAME' => "Name 2", 'LOCATION' => "Nowhere 22", 'PHONE' => "0005555"),
    etc
);

したがって、それを使用する場合は、この種の構成を使用する必要があります

$name     = $new_array[$i]['NAME']
$location = $new_array[$i]['LOCATION']
etc

また

<?php echo $new_array[$i]['NAME']; ?>
<?php echo $new_array[$i]['LOCATION'] ?>
etc
于 2013-10-05T16:04:31.597 に答える