Bug #80575 [PATCH]: Type casting of mysqli object to array produces null on every field

From: Date: Fri, 08 Jan 2021 13:53:32 +0000
Subject: Bug #80575 [PATCH]: Type casting of mysqli object to array produces null on every field
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-231448@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=80575&edit=1

 ID:                 80575
 Patch added by:     cmb@php.net
 Reported by:        sapphirerx5700xt at gmail dot com
 Summary:            Type casting of mysqli object to array produces null
                     on every field
 Status:             Verified
 Type:               Bug
 Package:            MySQLi related
 Operating System:   Windwos 10 pro x 64bit 20H2
 PHP Version:        7.4
 Assigned To:        cmb
 Block user comment: N
 Private report:     N

 New Comment:

The following pull request has been associated:

Patch Name: Fix #80575: Casting mysqli to array produces null on every field
On GitHub:  https://github.com/php/php-src/pull/6587
Patch:      https://github.com/php/php-src/pull/6587.patch


Previous Comments:
------------------------------------------------------------------------
[2021-01-02 16:43:09] sapphirerx5700xt at gmail dot com

Description:
------------
My php version is 8.0.0 ,mysql version is 8.0.22, apache version is 2.4.46

Output is as follows  
object(mysqli)#8 (18) {
  ["affected_rows"]=>
  int(0)
  ["client_info"]=>
  string(13) "mysqlnd 8.0.0"
  ["client_version"]=>
  int(80000)
  ["connect_errno"]=>
  int(0)
  ["connect_error"]=>
  NULL
  ["errno"]=>
  int(0)
  ["error"]=>
  string(0) ""
  ["error_list"]=>
  array(0) {
  }
etc
.......

after type casting everything returns null 

array(18) {
  ["affected_rows"]=>
  NULL
  ["client_info"]=>
  NULL
  ["client_version"]=>
  NULL
  ["connect_errno"]=>
  NULL
  ["connect_error"]=>
  NULL
  ["errno"]=>
  NULL
  ["error"]=>
  NULL
  ["error_list"]=>
  NULL
etc
....

Test script:
---------------
//Type casting of mysqli object to array produces null on every field on var_dump() and print_r()

$db =
mysqli_connect(hostname:'localhost',username:'root',password:'',database:'tables',port:3306);

echo "<pre>";    // We get output in this case even with var_dump
print_r($db);
echo "</pre>";

echo "<pre>";
print_r((array) $db);  // All fields show null even with var_dump
echo "</pre>";



------------------------------------------------------------------------



--
Edit this bug report at https://bugs.php.net/bug.php?id=80575&edit=1


Thread (4 messages)

« previous php.bugs (#231448) next »