有文件JSON問題防止覆蓋文件
了我的代碼和我的代碼的PHP是在這裏:
<?php
$json = $_POST['json'];
/* sanity check */
$file = fopen('../js/json/nameplaylist.json','w+');
fwrite($file, $json);
fclose($file);
?>
我需要的是,當名字被保存,我不能覆蓋整個文件竇,我將其添加到列表的末尾,然後顯示它在選擇
解決方案:
<?php
$in_array = json_decode($_POST['json'], true);
$file_array = json_decode(file_get_contents('../js/json/nameplaylist.json'), true);
$new_array = array_merge($file_array, $in_array);
file_put_contents('../js/json/nameplaylist.json', json_encode($new_array));
?>
所以你想合併現有的文件與新的數據,或只是將新的數據添加到現有文件的末尾?爲什麼不只是讀取現有的文件內容,合併爲數組,然後替換? – Anthony
嘗試從文件中重新獲取數據,然後將新$ json添加到舊數據中,然後重寫它。 – aerojun
(僅供參考)使用'a +'附加。 'w +'會覆蓋內容。 –