gpt4 book ai didi

php - MySQL 和 PHP 行数组

转载 作者:可可西里 更新时间:2023-11-01 07:53:21 26 4
gpt4 key购买 nike

好吧,我对 MySQL 的一切都有一种与生俱来的恐惧

这是我的 table :

+----+-----------------+------+
| id | name | age |
+----+-----------------+------+
| 1 | Timmy Mellowman | 23 |
| 2 | Jeff Johnson | 18 |
+----+-----------------+------+

这是我的 PHP 代码(在连接到数据库之外)

$raw = mysql_query("SELECT * FROM example") or die(mysql_error()); 
$row = mysql_fetch_array($raw);
echo "\n\n";
print_r($row);

这是我的输出:

Array
(
[0] => 1
[id] => 1
[1] => Timmy Mellowman
[name] => Timmy Mellowman
[2] => 23
[age] => 23
)

为什么是这样的输出?双名?为什么 [1] 和 [name] 都设置了名称?

此外,他们还提供了一种将 PHP 与 MySQL 结合使用的更好方法

最佳答案

根据 PHP docs 对于 mysql_fetch_array:

Returns an array of strings that corresponds to the fetched row, or FALSE if there are no more rows. The type of returned array depends on how result_type is defined. By using MYSQL_BOTH (default), you'll get an array with both associative and number indices. Using MYSQL_ASSOC, you only get associative indices (as mysql_fetch_assoc() works), using MYSQL_NUM, you only get number indices (as mysql_fetch_row() works).

因此在您的行中 $row = mysql_fetch_array($raw); $row 收到一个数组,该数组具有关联索引和数字索引,因为这是默认设置。如果您只需要关联索引,请使用 $row = mysql_fetch_array($raw,MYSQL_ASSOC);(或 mysql_fetch_assoc())或者您只需要数字索引,请使用 $row = mysql_fetch_array($raw,MYSQL_NUM);(或 mysql_fetch_row())。

要检索所有行,请使用类似的东西:

while ($row = mysql_fetch_array($raw)) {
echo "<p>" . $row['id'] . " - " . $row['name'] . " - " . $row['age'] . "</p>\n";
}

关于php - MySQL 和 PHP 行数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14008383/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com