$newOrders
是一个数组并包含订单对象...
order_id
是一个对象变量。我想将order_id
值与variable($orderId)
循环中的另一个If
进行比较...
但它失败了
这是我的代码:
if($newOrders[$i]->order_id == $orderId){
echo "voila, found it:".$newOrders[$i]."<br>";
return $newOrders[$i];
}
答案 0 :(得分:1)
每当我遇到一段不起作用的代码时 - 特别是比较 - 我打印出变量的两面(并且经常分解更复杂的变量,比如你的数组)并实际查看信息,而不是假设我从查看代码就知道了。
当数据被丢弃或以其他方式手动检查时,不可避免地存在一个明显的问题。 Symfony VarDumper或print_r等工具,或者带断点和变量检查的IDE都适合查看正在发生的事情。
答案 1 :(得分:0)
$i
是什么,请您填写完整的代码(我相信代码段应该在某个循环中for
或foreach
)您始终可以通过
检查班级的有效对象if ($newOrders[$i] instanceof Order) { //Presuming Order is your class name
//do your stuff
}
您还可以使用var_dump()
函数检查对象内的变量。
我希望它会有所帮助。