目標: 我試圖通過讓用戶輸入所需的屬性來讀取任何 json文件的某些部分。php中的變量訪問對象屬性
說我有一個對象,它看起來像這樣:
"adverts": [
{
"id": "33655628",
"companyInfo": {
"companyName": "Company A",
"homepage": "http://companya.com",
"companyText": null
},
...
]
我想通過一個變量分配屬性名稱或「路徑」來訪問屬性。 訪問的第一級($項目 - > $ _ id)的正常工作,但我怎麼的companyName直接訪問內嵌屬性與這樣的變量作爲
$_name = "companyInfo->companyName";
例:
$_repeat = "adverts";
$_id = "id";
$_name = ??????
foreach($data->$_repeat as $item){
var_dump($item->$_id);
var_dump($item->$_name);
}
編輯: 澄清:我希望這是通用的任何 JSON對象!
初步解決方案: 我通過循環得到了想要的結果表明通過@Carlos:
$_title_a = explode(".",$_title);
$current = $document;
foreach($_title_a as $a){
$current = $current->$a;
}
var_dump($current);
如果有人有更好的建議,我將很高興聽到這個消息。謝謝大家!
你可能需要在部件解析您的字符串和循環。或者使用類似'eval'的東西... – jeroen 2015-02-24 13:03:12