2011-04-06 224 views
0

我想写一些文本文件。PHP写入文件

$myFile = "meinung.txt"; 
$fh = fopen($myFile, 'w') or die("can't open file"); 
$stringData = "Floppy Jalopy\n"; 
fwrite($fh, $stringData); 
$stringData = "Pointy Pinto\n"; 
fwrite($fh, $stringData); 
fclose($fh); 

当我要执行此,它说:“无法打开文件”

我是怎么做了?

+3

您是否拥有该目录的写入权限? – fabrik 2011-04-06 09:22:20

+3

您有权限写入文件/文件夹吗? – Headshota 2011-04-06 09:22:20

+0

你可以试着拿出“死亡”,看看它给你的错误。 – 2011-04-06 09:30:07

回答

1

广场

<?php 
error_reporting(E_ALL); 
ini_set('display_errors','On'); 
... 

您的代码可以在屏幕上或在您的日志文件得到错误信息的顶部(你知道你的错误日志文件的,不是吗?)。

设置文件的绝对路径,以便您真正知道在实际创建文件的目录中修复了文件系统权限,如注释中所述。

+0

此外:使用'$ myFile = dirname(__ FILE__)。 “/ meinung.txt'; (或自$ PHP 5.3以后的'$ myFile = __DIR__。'/meinung.txt'),你会得到绝对路径。 – KingCrunch 2011-04-06 09:47:37

+0

@KingCrunch - '__FILE__'(带绝对路径)自PHP 4.0.2起可用;并且:也许他想将内容放到除脚本之外的其他目录中。 – initall 2011-04-06 09:53:56

+0

我知道'__FILE__'可用于...很长一段时间^^'__DIR__'从5.3开始可用。那就是你必须在版本<5.3中使用类似'dirname(__ FILE __)'的原因。该目录的提示是有效的。所以'$ myFile = getcwd()。 '/meinung.txt';'可能更好。 – KingCrunch 2011-04-06 09:56:32