将特殊字符插入到Web地址的字符串中(PHP问题)

时间:2010-07-19 16:55:03

标签: php

我上周发布了这个问题,但我不太清楚需要什么。所以我现在正在重新发布。

我有一个存储在数据库中的字符串,如下所示:

<5u79cfda 4d01ga3a 11c833f9 7b52df2a 7g210252 e21b01fa a73d3463 9ge0e412>

我正在尝试将其插入到网址中,但需要进行正确编码才能使其正常工作。我正在运行查询以获取脚本:

$result = mysql_query("SELECT cPushID FROM tblUsers WHERE intUserID='20' AND Length(cPushID) > 70");

$pid = mysql_fetch_row($result);

然后尝试将其插入到要执行的此Web地址中:

file_get_contents("http://domain/test.php?msg='Test!'&to=$pid");

如何将此字符串正确插入到网址中,以便在执行时正确读取。

感谢您的帮助。

3 个答案:

答案 0 :(得分:3)

使用urlencode

答案 1 :(得分:1)

urlencode怎么样?

$encoded = urlencode($some_string");

将该编码字符串传递给file_get_contents

如果您需要解码它,请使用urldecode()

http://php.net/manual/en/function.urlencode.php

答案 2 :(得分:0)

您需要urlencode()您的查询字符串才能安全地编码这些空格(以及可能的尖括号?!)

file_get_contents("http://domain/test.php?msg='Test!'&to=".urlencode($pid));

当您阅读$_GET['pid']

时,会自动解码查询字符串