Tôi cũng gặp sự cố này và đang phát điên khi cố gắng gỡ lỗi nó. Nó chỉ ra rằng đôi khi vì bất kỳ lý do gì mà đối tượng mysqli không được phổ biến, nhưng việc truy cập trực tiếp vào các thuộc tính của nó vẫn thực thi mã gốc đằng sau nó. Vì vậy, mặc dù một var_dump của toàn bộ đối tượng mysqli hiển thị các thuộc tính null, chúng vẫn ở đó nếu bạn truy cập riêng lẻ. Nếu errorno hóa ra là sai, bạn có thể đã thực hiện một truy vấn hợp lệ với tập kết quả trống mà bạn không mong đợi. Hy vọng điều này sẽ hữu ích.
$mysqli = mysqli_connect('localhost', 'root', '', 'test', 3306);
var_dump($mysqli);
var_dump($mysqli->client_info);
var_dump($mysqli->client_version);
var_dump($mysqli->info);
và đầu ra:
object(mysqli)[1]
public 'affected_rows' => null
public 'client_info' => null
public 'client_version' => null
public 'connect_errno' => null
public 'connect_error' => null
public 'errno' => null
public 'error' => null
public 'field_count' => null
public 'host_info' => null
public 'info' => null
public 'insert_id' => null
public 'server_info' => null
public 'server_version' => null
public 'stat' => null
public 'sqlstate' => null
public 'protocol_version' => null
public 'thread_id' => null
public 'warning_count' => null
string 'mysqlnd 5.0.8-dev - 20102224 - $Revision: 321634 $' (length=50)
int 50008
null
int 0
string 'localhost via TCP/IP' (length=20)
string '5.5.20-log' (length=10)
int 50520