我目前有此代碼正在運行。它分裂了變量$ json,其中有},{但它也刪除了這些字符,但實際上我需要json_decode函數的尾部和前導括號。我創建了一個解決方案,但想知道是否有更優雅的解決方案?PHP preg_split並替換
<?php
$json = '{"a":1,"b":2,"c":3,"d":4,"e":5},{"a":1,"b":2,"c":3,"d":4,"e":5}';
$individuals = preg_split('/},{/',$json);
$loop_count =1;
foreach($individuals as $object){
if($loop_count == 1){$object .='}';}
else{$object ="{".$object;}
print_r(json_decode($object));
echo '<br />';
$loop_count++;
}
?>
編輯: 的$ JSON變量實際檢索作爲JSON對象。一個合適的例子是
[{「id」:「foo」,「row」:1,「col」:1,「height」:4,「width」:5},{「id」 :「bar」,「row」:2,「col」:3,「height」:4,「width」:5}]
如果你想使用JSON數據,你爲什麼不簡單地使用PHP的JSON函數來獲取它?您可以將字符串編碼爲JSOn對象並訪問變量。 – tim
是的,JSON_decode()適用於將JSON數據轉換爲可用的php對象(或者如果您設置參數,則爲數組)。否則,您可能希望查看「被動」與regexp的匹配。 – CP510
變量$ json被髮送到這個文件。我爲這個問題提供了一個硬編碼的例子。看一下編輯和解釋的問題。 – Somk