2013-05-03 145 views
3

我试图用PHP来创建一个文本文件,但我一直收到“无法打开文件”的错误。谁能告诉我我做错了什么?使用PHP创建文本文件?

chmod('text.txt', 0777); 

$textFile = "text.txt"; 
$fileHandle = fopen($textFile, 'w') or die("can't open file"); 
$stringData = "Hello!"; 
fwrite($fileHandle, $stringData); 
fclose($fileHandle); 
+0

文本文件是否在同一目录中? – 2013-05-03 00:59:40

+0

是的,它在同一个目录中。 – hayleyelisa 2013-05-03 01:06:44

回答

9

你不能chmod()一个不存在的文件。您必须拥有对父文件夹的写权限才能允许Apache(如果您正在运行Apache,否则允许哪些用户允许写文件)作为用户在该文件夹内部进行写入(无论是根目录还是子文件夹)。

此外,你应该做一些错误处理您的文件写入:

<?php 
if($fh = fopen('text.txt','w')){ 
    $stringData = "Hello!"; 
    fwrite($fh, $stringData,1024); 
    fclose($fh); 
} 

希望这有助于!

+0

谢谢!但我将如何去添加父文件夹的写权限? (我在这里有点头痛,即使是一个链接,可以帮助我找到正确的方向。) – hayleyelisa 2013-05-03 01:09:25

+0

你需要某种类型的FTP访问。大多数程序(如filezilla,winscp,dreamweaver)允许您右键单击该文件夹并设置用户和权限级别。 – 2013-05-03 01:16:52

+0

哦,好吧,我明白了。完善!非常感谢! – hayleyelisa 2013-05-03 01:22:51