gpt4 book ai didi

php - MySQL 列值到数组。结果是错误的值

转载 作者:行者123 更新时间:2023-11-30 00:52:01 25 4
gpt4 key购买 nike

尝试从单个列中获取所有值。毕竟,只是尝试打印所有值来检查一切是否正常。不幸的是,我打印的所有值都是相同的 - “Array”(不带引号)。

我对 MySQL 很陌生。这是我的代码:

$sql_connect = mysql_connect("localhost","db_user_name","db_password") ;
if (!$sql_connect) {
die("Database connection failed: " . mysql_error());
}
mysql_select_db("db_name") or die ("no database");

$result = mysql_query("SELECT column_name FROM table_name");
$video_IDs = array();
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
$video_IDs[] = $row[$key];
}

然后,我打印 $video_IDs 数组

$test = 1 ;
while (each($video_IDs)) {
echo "{$test} - {$video_IDs}<br />" ;
$test++ ;
}

mysql_close($sql_connect);

结果我打印了所有 10 个值,因为我的表中有 10 行。但所有值都是“Array”(不带引号)。

我的结果:

1 - Array
2 - Array
3 - Array
4 - Array
5 - Array
6 - Array
7 - Array
8 - Array
9 - Array
10 - Array

期待收到任何建议。

最佳答案

不使用循环或递归或访问数组的特定元素,就没有本地方法可以回显数组。您也没有正确使用 each 函数,因为它返回一个键/值对作为结果(并且您没有捕获循环的结果。)您应该这样做:

$test = 1 ;
foreach ($video_IDs as $v) {
echo "{$test} - {$v}<br />";
$test++;
}

如果您必须使用 each,请对原始代码稍作更改,以便每次迭代时键/值对都存储在 $v

$test = 1 ;
while ($v = each($video_IDs)) {
echo "{$test} - {".$v['value']."}<br />" ;
$test++ ;
}

如果您只是尝试显示没有任何特定格式的数组,请使用 var_dumpprint_r

还需要注意的是,您正在使用已折旧的函数 (mysql_*),并且您应该使用 MySQLi 或 PDO 进行 SQL 查询。

关于php - MySQL 列值到数组。结果是错误的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20888824/

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