php - sizeof 返回错误答案

标签 php mysql

我正在使用 php 从 mysql 表中获取一些数据。该表返回正确的结果,但是因为该表有很多列,我认为我可以为此创建一个 for 循环并将我的所有值保存为 val1val2 等。我首先使用 while 循环,因为可以有几行:

while($row1 = mysql_fetch_array($sql2)){
    for($i = 1; $i < sizeof($row1); $i++) {
        $val.$i = $row1[$i];
    }

但是由于某些原因 sizeof($row1) 返回 40 而我在该表中只有 18 列。

我认为 $val.$i = $row1[$i]; 不是声明变量的正确方式?

我知道我会犯一个愚蠢的错误,但我无法弄清楚。 :S

最佳答案

您需要指定结果类型:

mysql_fetch_array($sql2, MYSQL_NUM);

来自manual :

By using MYSQL_BOTH (default), you'll get an array with both associative and number indices.

关于php - sizeof 返回错误答案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9490858/

相关文章:

MySQL 无法检查点是否在距离内... MBRContains 查询错误或 Bug?

php - 嵌套集模型是否适用于具有多个类别(多对多)的文章?

php - 我想显示返回数据以转换json

mysql_query 中的 PHP 变量

php - 我的学说真的很慢。简单查询,一秒出结果

mysql - 包含 NULL 作为值的列未在审计表中进行审计。我正在使用更新后触发器

php - HTML 到经典 ASP - 页面加载为代码行 (ASP)

php - COUNT操作前如何检查?

mysql - 'SELECT' 语句中的 'IF' - 根据列值选择输出值

mysql - odbc 驱动程序不支持请求的属性 VB6