2012-12-14 66 views
0

輸出指定行我使用一種形式收款和使用print_r的,我可以看到下面的輸出...PHP - 從Array

[customer] => ChargifyCustomer Object 
    (
     [email] => [email protected] 
     [first_name] => John 
     [last_name] => Doe 
     [organization] => 
     [reference] => 
     [id] => 2588487 
     [created_at] => 2012-12-14T08:50:45-05:00 
     [updated_at] => 2012-12-14T08:50:45-05:00 
    ) 

的PHP生產這種輸出下面看到...

try { 
    $new_subscription = $subscription->create(); 
    if ($new_subscription != '') { 
     // session_unset(); 
     echo '<pre>'; 
     print_r($new_subscription); 
     echo '</pre>'; 
     foreach ($new_subscription as $item) { 
      echo 'First Name' . $item->customer->first_name . '.'; 
     } 
    } 
} 

雖然每次加載頁面時,名字都沒有被回顯。相反,它只是說'名字'。幾次。

請幫忙確定我的錯誤在哪裏。

+0

你爲什麼不嘗試在'foreach'循環中'print_r($ item)'並且看看它是什麼樣的。我猜你已經快到了 –

回答

0

您需要檢查的重點:

foreach($new_subscription as $key => $item) { 
    if($key == 'first_name') { 
     echo "First Name: " . $item . '.'; 
    } 
} 

但我不知道爲什麼你會做一個foreach因爲$ new_subscription不是對象的數組。實際上你應該說:

echo "First Name: " . $new_subscription->first_name. '.'; 
+0

'$ new_subscription ['customer'] - > first_name'而不是'$ new_subscription-> first_name' – GBD

+0

哦好的電話沒有注意到裏面有一個數組。 – Pitchinnate

+0

他應該複製整個print_r,如果它實際上是一個數組,它將會以如下方式啓動:Array([customer] => ChargifyCustomer Object ...' – Pitchinnate