MySQLデータベースのすべての値を選択する次のPHPコードがあります。
<?php
$query1 = mysql_query("SELECT * FROM hosts WHERE name!=''");
?>
各行の結果をエコーアウトできるように、クエリが返すものを変数に割り当てるにはどうすればよいですか?
mysql_queryは、結果から各行をフェッチするためにこれらのメソッドで使用できるリソースを返します。
使用される最も一般的な関数はmysql_fetch_assocで、列名をキー名として使用して行を連想配列としてフェッチします。
<?php
$result = mysql_query(...);
while ($row = mysql_fetch_assoc($result)) {
print $row['columnName'];
}
mysql_free_result($result);
?>
代わりにMySQLi拡張機能に切り替えることをお勧めします。より多くのMySQL機能をサポートし、手続き型およびオブジェクト指向の実装があります。PDO_MYSQL拡張機能は、MySQLiに比べていくつかの改善を提供しますが、オブジェクト指向の実装しかないため、起動して実行するにはもう少し時間がかかります。
結果を得るには、次のようなことを行う必要があります。
<?php
$query1 = mysql_query("SELECT * FROM hosts WHERE name!=''");
while($results = mysql_fetch_array($query1)){
echo $result['column_name'];
}
?>
完全な例を次に示します。mysql_fetch_array()