2014-09-22 107 views
0

我在訪問一個函數中的傳遞對象的屬性時遇到了一些麻煩。我知道對象定義或我如何訪問屬性沒有問題,因爲我可以在其他地方做到這一點。如何訪問傳遞給函數的對象的屬性?

參考:

$officials_arrayOfficial對象的數組。

$divisiondivision_scope是此物件的屬性。 (我簡化了代碼,直到問題出在哪裏,所以你可以看到這個代碼實際上沒有被修改)。

下面是代碼:

$modal_counter = 0; 
function echoOfficial($offical, $modal_counter) { 
    echo "Scope: " . $official->division_scope . " Name: " . $official->division; 
    return $modal_counter; 
} 

echo "<h2>National</h2>"; 
foreach ($officials_array as $official) { 
    if ($official->division_scope == "national") { 
     $modal_counter = echoOfficial($official, $modal_counter); 
    } 
} 

if工作正常,並且echoOfficial()函數被調用,但性能不與文字呼應沿(輸出僅僅是Scope: Name:),它似乎是該對象實際上不會傳遞給該函數。如果我嘗試訪問某個對象的方法,那麼代碼就不會運行。

我搞不​​清楚我做錯了什麼。我認爲這可能與從foreach循環訪問對象有關,但我不確定。

回答

2

你有一個簡單的錯字 - function echoOfficial($offic!!al - 你錯過了i

我建議你使用任何語法高亮的IDE來避免將來出現這樣的錯誤,因爲它們難以察覺。

+0

哇,非常感謝。我覺得自己像一個白癡... – 2014-09-22 13:43:01

+0

這些錯別字,如果你使用一個好的IDE,將不會有這樣的問題在99%的速度。大多數IDE會在線路上提供一個紅色指示燈等。 – 2014-09-22 13:47:09

+1

@ConorStrejcek IDE是一回事,也可以考慮啓用錯誤。 [如何在PHP中獲取有用的錯誤消息?](http://stackoverflow.com/a/845025/3361444) – Debflav 2014-09-22 13:47:21

相關問題