5

我想在 PHP 的文件夹中打开一个文件。问题是包含该文件的文件夹的名称中可能包含空格。我用来打开文件(并且不起作用)的代码如下:

$myFile = "path/to the/file.txt";
$myFile = str_replace(' ', '\ ', $myFile);
$fh = fopen($myFile, 'r');
$theData = fread($fh, filesize($myFile));
fclose($fh);
echo $theData;

如您所见,我试图通过\在空间前面放置 a 来解决问题,但这并不能解决问题。我仍然收到以下错误:

Warning: fopen(path/to\ the/file.txt) [function.fopen]: failed to open stream: No such file or directory in /path/to/my/website on line 49

关于如何解决这个问题的任何想法?

谢谢!

4

1 回答 1

9

反斜杠用于转义命令行上的空格,因为命令行上的空格是参数分隔符。PHP中没有这样的问题。如果你给 任何字符串fopen,它期望这个字符串是一个路径。它不会在空格处将路径分成单独的参数,因为这在这种情况下没有意义。

因此,不要添加任何反斜杠。路径path/to\ the/file.txt与路径不同path/to the/file.txt

于 2012-09-03T08:24:17.820 回答