PHP не может прочитать имя файла, который имеет специальный символ! - PullRequest
1 голос
/ 04 декабря 2010

У меня проблема с file() в php. Функция не может прочитать файл, начинающийся с ! или $ как !textfile.txt или $textfile.txt, я пытаюсь с fopen(), и это происходит так же Я понятия не имею, как это решить. Я надеюсь, что кто-то может помочь Цени любую помощь.

Ответы [ 2 ]

1 голос
/ 04 декабря 2010

Имя файла "$textfile.txt" не будет работать должным образом, поскольку интерполяция переменной происходит в двойных кавычках, поскольку значение результата переменной $textfile будет добавлено с .txt, а результат будет использоваться в качестве имени файла.Если $textfile не определено (что в большинстве случаев имеет место), .txt будет использоваться в качестве имени файла.

Чтобы исправить это, используйте одинарные кавычки вокруг имени файла как '$textfile.txt' или если вам нужно использовать двойныекавычки, экранируйте $ как: "\$textfile.txt"

Но я не вижу проблем с "!textfile.txt"

0 голосов
/ 04 декабря 2010
echo file_get_contents("\$test.txt");

Работает.

Вам необходимо экранировать специальные символы или использовать одинарные кавычки.

...