對於窮術語的道歉,不能想出正確的詞來描述這個問題,所以這個例子應該更有用。訪問具有相同名稱的PHP對象變量?
我在輪詢一個API服務器並返回一個JSON對象,我使用json_decode轉換爲一個PHP對象。
以XML格式返回結果的一個例子是在這裏:http://balifoodsafari.com.au/RGJ4QHE.xml
在這個結果有下booking-多個領域的子集>字段的每一個與它自己的標籤和值。我需要通過這些處理並將正確的字段值分配給正確的變量,並且我無法保證每次輪詢API服務器時字段的順序都是相同的。
我的想法,因爲我寫這會是這樣的:
foreach($decoded->booking->fields->field as $field){
if($field->label == "Name of Hotel/Accommodation"){
$hotelname = $field->value;
}
elseif(){repeat for 2nd field name}
elseif(){repeat for 3rd field name}
elseif(){repeat for 4th field name}
}
基本上的foreach現場發現運行一系列的檢查來查找匹配字段標籤和匹配的變量。有沒有更好的方法來做到這一點和/或上述代碼的工作?
OP是否有性能問題?雖然'switch'語句沒有錯,但您的論證聽起來很像[過早優化](http://c2.com/cgi/wiki?PrematureOptimization)。 – 2014-12-01 17:07:18