私はPHPでこのクエリを持っているとします。PHPのMySQL結果配列
$a = mysql_query("SELECT * FROM `users` WHERE `id` = '1' ");
どれもいいですが、問題があります。どのように私は推測$の内容を表示、やっていることはそれほどのような配列である:
Index | Value ID | 1 Username | Foo Password | Bar ...
私はPHPでこのクエリを持っているとします。PHPのMySQL結果配列
$a = mysql_query("SELECT * FROM `users` WHERE `id` = '1' ");
どれもいいですが、問題があります。どのように私は推測$の内容を表示、やっていることはそれほどのような配列である:
Index | Value ID | 1 Username | Foo Password | Bar ...
while ($row = mysql_fetch_assoc($a)) { echo $row['id']; echo $row['username']; echo $row['password']; }
while($row = mysql_fetch_assoc($a))
{
echo $row['index'] . ' | ' . $row['ID'] . ' | ' .
$row['username'] . ' | ' . $row['password'];
}
mysql_free_result($a);
それはかなり遅くはありませんので、私はmysql_fetch_row
からmysql_fetch_assoc
をprefere、それが与えます名前でフィールドを呼び出すことができます(たとえば、 `$ row ['index'])。
索引または名前で行を参照する柔軟性が必要な場合は、mysql_fetch_array
を使用することもできます。本当に、ただ好みです。
は、より多くの情報のためfetch_arrayfetch_assocfetch_objectを参照してください。
または使用:mysql_query()
を実行している
var_dump($a, true);
あなただけのentrysを見たい場合は... PHPとMySQL関数で
は、結果セットを指す識別子を返します。したがって、返されたIDを実際にmysqlに渡して結果セットを返すには、mysql_fetch_assoc()
またはその兄弟(mysql_fetch_array
、mysql_fetch_object
、mysql_fetch_row
)が必要です。
これらの関数はただ一つの行を返し、内部ポインタを次の行に進めることにも注意してください。
mysql_fetch_row()でどうなりますか? list()言語コンストラクトと組み合わせれば、かなりうまく動作し、強く型付けされた変数名を提供します。私はこれを数回使用しました:
$a = mysql_query("SELECT * FROM `users` WHERE `id` = '1' ");
while(list($index,$id,$username,$password) = mysql_fetch_row($a))
{
echo "Index | " . $index . "<br />"; // assuming this in HTML
echo "ID | " . $id . "<br />;
echo "User | " . $username . "<br />";
echo "Pass | " . $password . "<br />";
}