Удаление и добавление JSON
столкнулся с такой проблемой: Нужно удалить или добавить JSON массив средствами PHP, сам JSON имеет такую структуру:
[
{
"img":"",
"btn":"",
"text":"",
"active":"1"
},
{
"img":"",
"btn":"",
"text":""
},
{
"img":"",
"btn":"",
"text":""
},
/* К примеру нужно удалить его.
{
"img":"",
"btn":"",
"text":""
}
*/
]
Добавление я пытался сделать таким образом, но не получилось:
function AddSlide() {
if(isset($_POST['add_slide_btn'])) {
$additionalArray = array(
'img' => $_POST['slide_img'] ?? '',
'btn' => $_POST['slide_btn'] ?? '',
'text' => $_POST['slide_text'] ?? ''
);
$data_results = file_get_contents('JSONPATH');
$tempArray = json_decode($data_results);
$tempArray[] = $additionalArray ;
$jsonData = json_encode($tempArray);
file_put_contents('JSONPATH', $jsonData);
}
}
Ответы (1 шт):
Автор решения: Alex Orange
→ Ссылка
Добавление:
$file = file_get_contents('data.json'); // Открыть файл data.json
$taskList = json_decode($file,TRUE); // перевести в массив
unset($file); // Очистить переменную $file
$taskList[] = array('name'=>$name); // Представить новую переменную как элемент массива, в формате 'ключ'=>'имя переменной'
file_put_contents('php/data.json',json_encode($taskList)); // Перекодировать в формат и записать в файл.
unset($taskList);
Удаление:
$file = file_get_contents('data.json'); // Открыть файл data.json
$taskList=json_decode($file,TRUE); // Декодировать в массив
foreach ( $taskList as $key => $value){ // Найти в массиве
if (in_array( $current, $value)) { // Переменную $current
unset($taskList[$key]); // после обнаружения удалить
}
}
file_put_contents('php/data.json',json_encode($taskList)); // Перекодировать в формат и записать в файл.
unset($taskList); // Очистить переменную $taskList
file_put_contents('php/data.json',json_encode($taskList)); // Перекодировать в формат и записать в файл.
unset($taskList);