如何用parse_str将反斜杠添加到json数据中

时间:2012-03-29 22:38:39

标签: php json php-5.3

为什么在使用parse_str时会将反斜杠添加到 json数据中?例如,

# Get the query string.
$string_query = 'type={"page":"page"}';

# Parse the string into an array &array_query.
parse_str($string_query, $array_query);

var_dump($array_query);

导致我的localhost(这是我追求的数据),

array
  'type' => string '{"page":"page"}' (length=15)

但在实时服务器中,

array(1) { ["type"]=> string(19) "{\"page\":\"page\"}" }

我怎么能不将反斜杠添加到json数据中?

1 个答案:

答案 0 :(得分:0)

一个简单的解决方案,

# Get the query string.
$string_query = 'type={"page":"page"}';

# Parse the string into an array &array_query.
parse_str($string_query, $query_array);


// Strip slashes from an array.
function strip_magic_quotes($array)
{
    if (get_magic_quotes_gpc())
    {
        function stripslashes_array($array)
        {
            return is_array($array) ? array_map('stripslashes_array', $array) : stripslashes($array);
        }
        return stripslashes_array($array);
    }
    return $array;
}

$query_array = strip_magic_quotes($query_array);

var_dump($query_array);