2010-12-04 173 views
1

我在php中使用file()时出现问题。该函数无法读取以!$(如!textfile.txt$textfile.txt)开始的文件,我尝试使用fopen(),它以同样的方式发生。我不知道如何解决这个问题。我希望有人可以帮助 感谢任何帮助。PHP无法读取具有特殊字符的文件名!

+0

请指定你的操作系统,有两个答案已经指出了`$`的问题,但不是`!` – ajreal 2010-12-04 10:07:11

回答

1

文件名"$textfile.txt"将无法​​按预期工作,因为变量插值发生在双引号中,因此变量$textfile的值将附加.txt,结果将用作文件名。如果$textfile未定义(主要是这种情况),.txt将用作文件名。

为了解决这个问题各地使用的文件名单引号为'$textfile.txt'或者,如果你要使用双引号,逃避$为:"\$textfile.txt"

但我看到"!textfile.txt"

+0

只需要注意 - 要实际打开“$ textfile.txt”,可以转义`$`或使用single引号。 “\ $ textfile.txt”和“$ textfile.txt”应该都可以工作。 – gnud 2010-12-04 10:04:57

0
echo file_get_contents("\$test.txt"); 

作品没有问题。

您需要转义特殊字符或使用单引号。