【问题标题】:mysqli query result is displayed as"Array" in php. How to retrieve the individual values from it?mysqli 查询结果在 php.ini 中显示为“数组”。如何从中检索单个值?
【发布时间】:2018-01-27 20:50:16
【问题描述】:

下面是我从数据库“INFORMATION_SCHEMA”的表“COLUMNS”中检索列名的代码。

$result = mysqli_query($con,"SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'CustomersTable'") or die(mysqli_error($con));

$columns = $result;
foreach ($columns as $column){
  echo $column;
}

我得到的回应是ArrayArrayArrayArrayArrayArrayArrayArray。但是,如果我写

mysqli_fetch_assoc($result);

而不是

$columns = $result;

然后我只回显数组的第一个值。

如何让所有值都按照我的预期回显?

【问题讨论】:

    标签: php arrays mysqli


    【解决方案1】:

    您需要在while() 循环内使用mysqli_fetch_assoc

    $result = mysqli_query($con,"SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'CustomersTable'") or die(mysqli_error($con));
    
    while( $row = mysqli_fetch_assoc($result))
    {
        // $row now contains an array with the `COLUMN_NAME` inside.
    }
    

    【讨论】:

      【解决方案2】:

      使用while() 循环和mysqli_fetch_assoc:-

      $result = mysqli_query($con,"SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'CustomersTable'") or die(mysqli_error($con));
      
      while($row = mysqli_fetch_assoc($result)){
        print_r($row);//array contains `COLUMN_NAME`.
        //based on printed value you can get how to do echo easily
      }
      

      【讨论】:

      • 赞成所有答案,但接受这个答案,因为它首先抓住了我并为我解释了足够的内容。感谢@Alive to Die。
      【解决方案3】:

      使用循环可以访问所有值

       $result = mysqli_query($con,"SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'CustomersTable'") or die(mysqli_error($con));
      
       while($row=mysqli_fetch_assoc($result){
              print_r($row);
       }
      

      【讨论】:

        【解决方案4】:

        要获取echo'ed 的所有值,您需要使用while() 循环和mysqli_fetch_assoc()

        $result = mysqli_query($con,"SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'CustomersTable'") or die(mysqli_error($con));
        while($rows = mysqli_fetch_assoc($result)) {
            print_r($rows); // this contains all the necessary data that you are looking for...
        }
        

        这里参考mysqli_fetch_assoc()

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2015-08-16
          • 1970-01-01
          • 1970-01-01
          • 2012-08-15
          • 2012-09-20
          • 2012-06-04
          • 1970-01-01
          相关资源
          最近更新 更多