PHP将文本从$ _GET转换为普通可读文本

时间:2015-12-31 08:29:06

标签: php html forms

我的页面中有一个用户提交查询的搜索表单。表单已提交,搜索查询将在浏览器的网址中提交。 PHP搜索并返回结果。例如。 http://example.com/search-results.php?q=ABC+books

结果页面有自己独立的搜索表单,其中包含文本框。我使用$ _GET [' q']来获取显示ABC books的输入框中的文字。

问题是当我使用包含撇号(')等字符的搜索查询时。例如。当我搜索Marley's Bar时,URL将是 - http://example.com/search-results.php?q= marley%27s + bar输入框中输出的文本显示marley \'s栏我希望将值返回为&# 39; marley's bar'没有斜线。

我试过

$getSearchQuery = $_GET['q'];
$getSearchQuery = rawurldecode($getSearchQuery);

但输出仍然相同。

1 个答案:

答案 0 :(得分:1)

朋友我认为您正在寻找

示例#1 striplashes()示例

<?php
$str = "Is your name O\'reilly?";

// Outputs: Is your name O'reilly?
echo stripslashes($str);
?>

示例#2在数组上使用stripslashes()

<?php
function stripslashes_deep($value)
{
    $value = is_array($value) ?
                array_map('stripslashes_deep', $value) :
                stripslashes($value);

    return $value;
}

// Example
$array = array("f\\'oo", "b\\'ar", array("fo\\'o", "b\\'ar"));
$array = stripslashes_deep($array);

// Output
print_r($array);
?>

请查看source