2010-12-04 126 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"); 

作品沒有問題。

您需要轉義特殊字符或使用單引號。