-1

Why backslashes are added into json data when parse_str is used? For instance,

# 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);

result in my localhost (which is the data I am after),

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

but in the live server,

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

How can I not to add the backslashes into json data?

Run
  • 54,938
  • 169
  • 450
  • 748

1 Answers1

0

a simply solution,

# 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);
Run
  • 54,938
  • 169
  • 450
  • 748