2016-06-06 1 views
0

$newOrders은 배열이며 주문 객체를 포함합니다 ...
order_id은 객체 변수입니다. 내가 ... If 루프 을 다른 variable($orderId)order_id 값을 비교하려는하지만 여기PHP에서 값을 비교하는 것이 유효합니까

실패 내 코드입니다 :

if($newOrders[$i]->order_id == $orderId){ 
    echo "voila, found it:".$newOrders[$i]."<br>"; 
    return $newOrders[$i]; 
} 
+0

order_id에 여분의 공백이 있는지 확인하려고 시도 했습니까? 값을 반향 시키려고 했나요? –

+1

in_array()를 사용하지 않는 이유는 무엇입니까? –

+0

무엇이 오류입니까? 'Order' 클래스에'__toString()'메소드를 구현 했습니까? –

답변

0
  1. 당신이 배열은 객체를 포함해야합니다, 당신은 확인 했는가? 그렇다면 어떻게? 이 변수 $i 무엇
  2. , 당신은 (나는 조각 일부 루프 for 또는 foreach에 있어야한다고 생각) 전체 코드를 넣어주십시오 수
  3. 당신은 항상

    if ($newOrders[$i] instanceof Order) { //Presuming Order is your class name 
    
    //do your stuff 
    
    } 
    
    하여 클래스의 유효한 개체를 확인할 수 있습니다
  4. var_dump() 함수를 사용하여 개체 내부의 변수를 검사하여 확인할 수도 있습니다.

도움이되기를 바랍니다.

1

내가 작동하지 않는 코드, 특히 비교 코드를 발견 할 때마다 변수의 양면을 인쇄하고 배열과 같은 더 복잡한 변수를 분해하고 실제로 정보를 봅니다. 내가 코드를 보면서 알았 더라면.

필연적으로 데이터가 덤프되거나 수동으로 검사 될 때 무엇이 ​​잘못되었는지는 분명합니다. Symfony VarDumper 또는 print_r과 같은 도구 나 중단 점 및 변수 검사가있는 IDE는 모두 정확히 무슨 일이 일어나는지 알기에 적합합니다.

관련 문제