私は次のコードを持っています:
//preparing statement, executing and so on is omitted...
//$this->cur_query_stmt is object returned by prepare() function
var_dump($this->cur_query_stmt);
foreach($this->cur_query_stmt as $k=>$v){
var_dump($k);
var_dump($v);
}
このコードの出力:
object(mysqli_stmt)#6 (9) {
["affected_rows"]=>
int(1)
["insert_id"]=>
int(7)
["num_rows"]=>
int(0)
["param_count"]=>
int(1)
["field_count"]=>
int(0)
["errno"]=>
int(0)
["error"]=>
string(0) ""
["sqlstate"]=>
string(5) "00000"
["id"]=>
int(2)
}
string(13) "affected_rows"
NULL
string(9) "insert_id"
NULL
string(8) "num_rows"
NULL
string(11) "param_count"
NULL
string(11) "field_count"
NULL
string(5) "errno"
NULL
string(5) "error"
NULL
string(8) "sqlstate"
NULL
string(2) "id"
NULL
すべての値がNULLとして返される理由を誰かが説明できますか?
$ this-> cur_query_stmt-> $ this-> affected_rowsを呼び出すことで取得できますが、foreach関数またはget_object_vars関数で取得しようとすると、NULLが取得されます。私は混乱しています、助けてください!