无法在mysqli中使用此mysqli_fetch_field_direct函数

问题描述

当我在PHP 7中的MysqL_fetch_filed_direct函数下面使用它时,它不起作用?

如何使用PHP 7进行相同操作?

public function __construct($tableName) { 
    global $link; 
    $this->tableName=$tableName; 
    $res=MysqLi_query($link,"SELECT * FROM ".$this->tableName); 
    $columns_total = MysqLi_num_fields($res); 
    for ($i = 0; $i < $columns_total; $i++) {
        $this->columnsArray[MysqLi_fetch_field_direct($res,$i)]="";
    }
}

解决方法

mysqli_fetch_field_direct()返回一个关联数组。如果要将列名用作$this->columnsArray中的键,则需要访问['name']元素。

public function __construct($tableName) { 
    global $link; 
    $this->tableName=$tableName; 
    $res=mysqli_query($link,"SELECT * FROM ".$this->tableName); 
    $columns_total = mysqli_num_fields($res); 
    for ($i = 0; $i < $columns_total; $i++) {
        $this->columnsArray[mysqli_fetch_field_direct($res,$i)['name']]="";
    }
}