Для API - декодирование JSON возвращает null, если в данных есть специальный символ, например &, #.
$custom_name = json_decode($request->custom_name);
// custom_name=[{"id":"1","name":"ff#&test"},{"id":"12","name":"test1"}]
print_r($custom_name); // returns null
Я отобразил json_last_error() - отображается как код ошибки 3
Как обращаться с этими данными.
json_decode('[{"id":"1","name":"ff#&test"},{"id":"12","name":"test1"}]') работает нормально. Проблема в другом.
Я бы посоветовал вообще не помещать JSON в свой URL-адрес. Если вы хотите отправить JSON на сервер, используйте вместо этого запрос POST. Тогда проблем с кодировкой URL не будет.
Код в вашем комментарии работает безупречно. Если вы хотите читать по URL-адресу, убедитесь, что вы используете encodeURIComponent, поскольку хэш-тег, как я могу назвать его «сохраненным»?
@FrankyW. если вы хотите использовать читать из закодированного URL, вам понадобится decodeURIComponent. И я подозреваю, что вы имеете в виду «зарезервированный» (т.е. специальный символ со своим собственным значением в URL-адресе) вместо «сохраненный» :-)






Мой URL-адрес localhost должен быть таким: localhost / client / mike / api /… {% 22id% 22:% 22260% 22,% 22name% 22:% 2 2ss #% 22}]