Формат JSON, потерянный в PHP

Когда я отправляю данные json из сценария действия 3 в php с использованием URLVariables , строка json изменяется и не может использоваться как json внутри php. Как предотвратить это? Или как это исправить?

trace from Flash (отправить moethod POST , имя переменной myObject ):

 [{"data1":"value1","data2":"value2",...},{...},...] 

echo $_POST['myObject'] из PHP:

 [{\"data1\":\"value1\",\"data2\":\"value2\",...},{...},...] 

echo json_decode($_POST['myObject']) из PHP ничего, когда var_dump(json_decode($_POST['myObject']) :

 NULL 

Сервер автоматически POST данные POST (как я помню, это опция в php.ini ). Для stripslashes используйте функцию stripslashes и после декодирования вашей строки;)

  json_decode(stripslashes($_POST['myObject'])); 

Основываясь на комментарии @therefromhere, лучшее решение для установки magic_quotes_gpc . Вы можете сделать это, если у вас есть корневой доступ для сервера, или у вас есть разрешение устанавливать флаги php во время выполнения. Вот вам помощь: http://php.net/manual/en/security.magicquotes.disabling.php

Основываясь на комментарии @ nl-x, если вы хотите решить эту проблему, не завися от конфигурации вашего сервера:

 $myObject = get_magic_quotes_gpc() ? //Examine: is magic quotes gpc on? stripslashes($_POST['myObject']) : //if true: unescape the string $_POST['myObject']; //if false, do nothing json_decode($myObject); //When php 5.3 or earlier installed on server