无法在if语句中立即引用php mysqli结果对象。。。?
为什么第二个代码块(作为第一个代码块的替换运行时)会产生错误“调用非对象上的函数fetch_object”?这是因为PHP没有像您预期的那样解析第二个语句 它的解读是:无法在if语句中立即引用php mysqli结果对象。。。?,php,if-statement,mysqli,logic,conditional-statements,Php,If Statement,Mysqli,Logic,Conditional Statements,为什么第二个代码块(作为第一个代码块的替换运行时)会产生错误“调用非对象上的函数fetch_object”?这是因为PHP没有像您预期的那样解析第二个语句 它的解读是: //Execute query and fetch first row if ($qry=$db->query("SELECT statement")) { if ($row=$qry->fetch_object()) { } } //Same code as above using onl
//Execute query and fetch first row
if ($qry=$db->query("SELECT statement")) {
if ($row=$qry->fetch_object()) {
}
}
//Same code as above using only one if statement
if ($qry=$db->query("SELECT statement") && $row=$qry->fetch_object()) {
}
如您所见,这意味着在调用fetch\u对象之前设置$qry
试着把你的陈述写进()
:
这是因为PHP没有像您预期的那样解析第2条语句
它的解读是:
//Execute query and fetch first row
if ($qry=$db->query("SELECT statement")) {
if ($row=$qry->fetch_object()) {
}
}
//Same code as above using only one if statement
if ($qry=$db->query("SELECT statement") && $row=$qry->fetch_object()) {
}
如您所见,这意味着在调用fetch\u对象之前设置$qry
试着把你的陈述写进()
:
因为PHP编译器认为单行代码对于大多数人来说是不直观的,所以我也有类似的情况,并且被告知有时程序运行的速度会超过它获得结果集的速度。为了避免这种情况,我不得不给程序添加一个超时(sleep),让它暂停片刻,以确保我得到了结果集。因为PHP编译器认为单行代码对大多数人来说是不直观的,所以我遇到了类似的情况,并被告知有时程序运行速度会超过它获得结果集的速度。为了避免这种情况,我不得不给程序添加一个超时(睡眠),让它暂停片刻,以确保我得到了结果集。工作得很好。。。!现在看起来很明显,我看到了!!干得好-谢谢。工作很有魅力。。。!现在看起来很明显,我看到了!!干得好-谢谢。
if (($qry=$db->query("SELECT statement")) && ($row=$qry->fetch_object()))