如何转义特殊字符'\'?

问题描述:

我使用PHP以检索从表和AJAX要显示的数据的结果。如何转义特殊字符''?

当我搜索使用位置的第一时间,我得到的结果和分页不工作,特别是为“伊斯坦布尔”。

的原因是特殊字符'\'与同时从谷歌地图拍摄的地址添加。

,当我去到下一个页面传递的网址,是

http://www.mysite.com/dropinn/search/\"http://www.mysite.com/dropinn/search?checkin=mm%2Fdd%2Fyy&checkout=mm%2Fdd%2Fyy&guests=1&location=Istanbul%2C+Turkey&min_bathrooms=0&min_bedrooms=0&min_beds=0&per_page=10&search_view=1&sort=1&page=3" 

如何在来到这个问题?

这是我写的代码:

$config['base_url'] = site_url('search').'?checkin='.urlencode($checkin).'&checkout='.urlencode($checkout).'&guests='.$nof_guest.'&location='.urlencode($location).'&min_bathrooms='.$min_bathrooms.'&min_bedrooms='.$min_bedrooms.'&min_beds='.$min_beds.'&per_page='.$per_page.'&search_view=1&sort='.$sort; 

为了逃避在PHP中,你必须使用\\

试试这个:

http://www.mysite.com/dropinn/search/\"http://www.mysite.com/dropinn/search?checkin=mm%2Fdd%2Fyy&checkout=mm%2Fdd%2Fyy&guests=1&location=Istanbul%2C+Turkey&min_bathrooms=0&min_bedrooms=0&min_beds=0&per_page=10&search_view=1&sort=1&page=3\" 

或者这样:

http://www.mysite.com/dropinn/search/\\"http://www.mysite.com/dropinn/search?checkin=mm%2Fdd%2Fyy&checkout=mm%2Fdd%2Fyy&guests=1&location=Istanbul%2C+Turkey&min_bathrooms=0&min_bedrooms=0&min_beds=0&per_page=10&search_view=1&sort=1&page=3\" 

或者最后:

http://www.mysite.com/dropinn/search/\\"http://www.mysite.com/dropinn/search?checkin=mm%2Fdd%2Fyy&checkout=mm%2Fdd%2Fyy&guests=1&location=Istanbul%2C+Turkey&min_bathrooms=0&min_bedrooms=0&min_beds=0&per_page=10&search_view=1&sort=1&page=3\\" 

你的问题有点混淆,没有看到更多的代码,但这些应该工作。

+0

谢谢,但,你能解释一下吗?我不清楚...在哪里添加\\ ...! – 2012-02-14 14:39:51

使用双引号,你逃脱\另一个\。如果您需要显示\,则必须输入\\,或者你可以使用单引号。

例如:echo "\hello\world";将需要echo "\\hello\\world";,或echo '\hello\world';