fopen工作fwrite不工作;t?don';我不认为这是权限问题


fopen works fwrite doesn't? don't think it is permissions

这是我的代码:

<?php
$getfromdb = 5;
$filename = 'file'.$getfromdb.'.php';
fopen($filename, 'w');
fwrite($filename, '<?php echo "works!"; ?>');
fclose($filename);
?>

我已将目录中的所有文件更改为777权限。文件file5.php已经创建,但有664个权限,所以我将其设置为777个权限。当我运行程序时,它会给我错误:

警告:fwrite():提供的参数不是第5行上/srv/disk4/865173/www/fishtaco.mypressonline.com/sitequinetest.php中的有效流资源

第6行的fclose也是如此……尽管"file5.php"具有777权限。

我使用awardspace.com作为我的主机

提前感谢您的帮助。

您需要使用fopen创建一个流资源,然后将其传递给fwrite:

<?php
$getfromdb = 5;
$filename = 'file'.$getfromdb.'.php';
$ressource = fopen($filename, 'w');
fwrite($ressource, '<?php echo "works!"; ?>');
fclose($ressource);
?>

您尝试写入文件名,而不是fopen返回的文件句柄。试试这个代码:

$fp = fopen($filename, 'w');
if($fp) {
    fwrite($fp, '<?php echo "works!"; ?>');
    fclose($fp);
}