На стороне клиента я работаю с массивом объектов javascript. На отправке мне нужно отправить его на PHP с формой и обработать данные дальше на стороне сервера.json_decode не работает без stripslashes (magic_quotes в Wordpress)
Поэтому при создании или изменении массива объектов на стороне javascript я сохраняю его на скрытый ввод. Он проходит с формой, как ожидалось, но проблема в том, что json_decode
возвращает NULL
, если я не stripslashes
перед его расшифровкой.
Магические цитаты отключены, поскольку я использую PHP> 5.5 и get_magic_quotes_gpc()
всегда возвращает FALSE
.
Может ли кто-нибудь объяснить мне, почему в этом случае мне нужны стрипы, и будет ли это на любом производственном сервере с магическими котировками?
P.S. В настоящее время я все еще работаю над средой dev на локальном сервере Windows и EasyPHP.
UPDATE: размещены данные на стороне сервера выглядит (var_dump
):
UPDATE2: Я использую Wordpress в качестве контейнера моего приложения.
string(5045) "[{\"address_components\":[{\"long_name\":\"Flughafenstrasse\",\"short_name\":\"Flughafenstrasse\"...
Как именно вы создаете строку JSON? – haim770
@ haim770 Объект - это в основном карты google placeResult-объект с некоторой модификацией (пара полей добавляется к объекту), а затем я использую 'JSON.stringify' перед сохранением значения для скрытого ввода. –
Если вы 'console.log (json)' перед добавлением к скрытому вводу, есть ли какие-либо косые черты? – haim770