2011-09-13 83 views
0

我已經通過一個web服務PHP multidimetional陣列空檢查

print_r($result); 

stdClass Object (
    [array] => Array ([0] => [1] =>) 
) 

我把它分解如下

$result = $array->return; 
foreach ($result as $val2) 
{ 
    $temp = $result[$i]->array[0]; 
    $temp .= " - ". $result[$i]->array[1]; 
} 

我要檢查,如果數組是空的傳遞給我下面的值(如它在上面)。但我無法通過

$result[$i]->array[0]; 

訪問數組我得到致命錯誤:

Cannot use object of type stdClass as array

什麼是檢查它的最好方法是什麼?

回答

1

stdClass不是一個數組,它是一個對象。但你訪問它像一個數組:

$result[$i] 
     ^^^^ 

它不應該是這樣的(不foreach):

$array = $result->array; 
$temp = vsprintf('%s - %s', $array); 

UPDATE:

因此,以測試它是否是空的,你可以使用

if (empty($result->array[0])) 
    .... 
+0

stdClass Object([array] => Array([0] => [1] =>)是$ result的print_r – David