0

クエリの結果を配列に変換しようとしています。

これを回す

$result = mysql_query("SELECT * FROM WHATEVER");

の中へ

$result = array('id' => 1, 'name' => 'bob');

しかし、私はしたくありませんprint_r().PHPの実行可能コードをエコーし​​たいです。

ありがとう!

4

4 に答える 4

2

試してみてください:

$records = array();
$query = mysql_query("SELECT * FROM WHATEVER ");
while ($result = mysql_fetch_assoc($query)) {
    $records[] = $result;
}

$recordsこれで、(再利用可能な) 配列として使用できます。

mysql_*新しいコードで関数を使用しないでください。それらはもはや維持されておらず、非推奨プロセスが開始されています。赤いボックスがか? 代わりにプリペアド ステートメントについて学び、 PDOまたはMySQLiを使用してください。この記事は、どちらを使用するかを決めるのに役立ちます。PDO を選択する場合は、ここに良いチュートリアルがあります。

于 2012-11-29T22:26:50.753 に答える
1

PDO とPDOStatement::fetchAll()を使用できます

$dsn = 'mysql:dbname=testdb;host=127.0.0.1';
$user = 'dbuser';
$password = 'dbpass';
$dbh = new PDO($dsn, $user, $password);
$sth = $dbh->prepare("SELECT * FROM WHATEVER");
$sth->execute();
$results = $sth->fetchAll(); // get all rows
var_dump($results);

//to get only first row:
$result = $results[0];
于 2012-11-29T22:26:41.853 に答える
0

試す:

while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
 printf("ID: %s  Name: %s", $row["id"], $row["name"]); //or echo
}

マニュアル

于 2012-11-29T22:33:31.190 に答える
-1

簡単:

$result = mysql_query("SELECT * FROM WHATEVER ");
if($result)
{
$result = mysql_fetch_array($result,MYSQL_ASSOC);
/*
manipule $result according you need
*/
print_r($result);
}
else{
echo mysql_error();
}
于 2012-11-29T22:25:59.920 に答える