文件路径为PHP URL参数

时间:2011-06-15 13:19:22

标签: php

我有一个PHP文件,它将接受多个URL参数,其中一个是本地文件路径(c:\ users \ etc ..)。每当读入此参数时,PHP都会将其转换为双反斜杠(c:\ users \ etc ..),我的上传代码不会将其作为有效路径接受。我能在这做什么?

由于

-Jesse

3 个答案:

答案 0 :(得分:2)

首先,为了安全性原因,请避免在查询字符串中接受 路径 。您可能希望在php.ini文件中设置 include path

您可以将双反斜杠替换为单个反斜杠:

$myvalue = str_replace('\\\\', '\\', $original_path);

指定\两次以在替换时实际转义它。

Working Example

答案 1 :(得分:1)

你可以做到

$newpath = str_replace("\\\\","\\",$oldpath);

或类似的

$newpath = stripslashes($olpath);

请注意,第二个工作取决于php.ini

中的magin_quotes设置

答案 2 :(得分:1)

这听起来像是典型的魔术行情问题。您可以disable them以不同的方式。从PHP 5.3开始,它们将被弃用,并将在PHP 6中删除。