Есть json-файл сохранённый в строке вида {"Org1":[{"a":1,"b":2},{...}...]} (название файла file.json)
Более наглядный вид:
{
"Org1": [
{
"a": 1,
"b": 2
},
{
"a": 12,
"b": 345
},
{
"a": 12364,
"b": -1
}
],
"Org2": [
]
}
Нужно изменить "Org1" на "Org123", не меняя порядка. Значения "Org1" и "Org123" в виде переменных "$SchoolOldName" и "$SchoolName" соответственное.
Проблема:
$file = "file.json";
$json = json_decode(file_get_contents("$file"), true);
$json = str_replace($SchoolOldName, $SchoolName, $json);
file_put_contents("$file", json_encode($json));
В таком варианте ничего не работает.
Если делать без json_decode/json_encode -- просто через file_get_contents, то всё работает, пока "Org1" не будет написано русскими символами. Тогда без json_encode название будет вида "\u0410\u0432\u0430\u043b\u043e\u043d" и str_replace не сработает.
Подскажите, пожалуйста, как перекодировать строку json в русский текст (чтобы она и осталась строкой, а не массивом)? Или же как сделать рабочий вариант замены значения с помощью json_decode?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Виртуальный выделенный сервер (VDS) становится отличным выбором
ПриветствуюИспользую Simple HTML DOM для парсинга товаров интернет-магазина
Добрый день, можете помочь объяснить, почему после отправки сообщения, сообщение приходит со сломанной кириллицей? Правильно ли написаны...
Нужно вставить в вектор векторов еще один вектор векторов после k-той строки, но компилятор выдаёт ошибкуВот код: https://hastebin
Доброго времени суток! Написал небольшой класс и в нем QTimer, но при вызове start() приложение входит в вечный циклС моей точки зрения, все норм,...