无法显示数组元素

时间:2018-02-06 09:45:22

标签: php arrays

我无法显示数组元素。如果我使用print_r($array);,它会显示我这样的内容:

  

stdClass对象([tableName1] => myValue1 [tableName2] => MyValue2 [tableName3] => myValue3 [tableName4] => myValue4)

但是如果我尝试用echo $array[0]打印第一个元素,我的网站就不会加载(我在IDE中没有错误)。

以下是我的功能代码:

public function queryInfo($query) {
    $database = $this->connect();
    $result = $database->queryInfo($query);
    while ($row = $result->fetch_object()) {
        $results[] = $row;
    }
    return $results; // this is the array i mean!
}

感谢您的帮助。

编辑: 解决方案:echo $array[0]->myTableName;

3 个答案:

答案 0 :(得分:4)

您正在尝试回显对象。 尝试print_r($ array [0]),如果它是一个对象,你可以使用:$ arrray [0] - > propertyName

访问它的属性

答案 1 :(得分:0)

public function queryInfo($query) {
    $database = $this->connect();
    $result = $database->queryInfo($query);
    $results = []
    while ($row = $result->fetch_object()) {
       $results.push($row);
    }
    return $results; // this is the array i mean!
}

答案 2 :(得分:0)

您将结果作为对象获取。

$row = $result->fetch_object()

您可以将对象作为$ array [0] - > tableName1访问,以获取第一个数组的列名tableName1的值。

而不是fetch_object使用fetch_all(MYSQLI_ASSOC)或fetch_array()