我试图从url解码的字符串中删除所有反斜杠,但它正在输出\,而不是输出url解码的字符串\删除。从PHP中删除所有反斜杠urldecoded字符串
请你能告诉我我的问题。
<?php
$json = $_GET['ingredients'];
echo urldecode(str_replace($json,$json, "\\"));
?>
我试图从url解码的字符串中删除所有反斜杠,但它正在输出\,而不是输出url解码的字符串\删除。从PHP中删除所有反斜杠urldecoded字符串
请你能告诉我我的问题。
<?php
$json = $_GET['ingredients'];
echo urldecode(str_replace($json,$json, "\\"));
?>
你想使用stripslashes()
,因为这正是它的目的。也看起来更短:
echo urldecode(stripslashes($json));
而应该考虑disabling magic_quotes。
你错误地使用str_replace函数
str_replace("\\","", $json)
试试这个,你对str_replace函数的参数是不正确的。
<?php
$json = $_GET['ingredients'];
echo urldecode(str_replace("\\","",$json));
?>
Accoring到php.net的str_replace docs,第一个参数是你要搜索的内容,第二个是你用什么替代,第三个是您正在搜索的字符串。因此,你正在寻找这个:
str_replace("\\","", $json)
这是100%正确工作。
$attribution = str_ireplace('\r\n', '', urldecode($attribution));
完美,谢谢。我很欣赏这个解释。 – 2011-05-08 22:37:49
我不得不这样做,以得到我的输入: – HiB 2013-11-15 00:30:16