首页 > 解决方案 > 使用 mysql SELECT 时只接收第一行

问题描述

/**
 * @param string $nick
 * @return array|null
 */
public function getPlayerByNick(string $nick) : ?array{
    $query = "SELECT * FROM reports";
    $result = $this->connection->query($query);
    if($result instanceof \mysqli_result){
        $data = $result->fetch_assoc();
        $result->free();
        var_dump($data);
    }
    return null;
}

当我做 var_dump 时,我只得到表中的第一个用户,但我想得到所有用户。我怎样才能做到这一点?

标签: phpmysql

解决方案


/**
 * @param string $nick
 * @return array|null
 */
public function getPlayerByNick(string $nick) : ?array{
    $query = "SELECT * FROM reports";
    $result = $this->connection->query($query);
    if($result instanceof \mysqli_result){
        while($data = $result->fetch_assoc()){  
          var_dump($data);
      }
      $result->free();
    }
    return null;
}

推荐阅读