duanjiu4498 2016-10-09 19:54
浏览 254

fopen PHP错误(期望参数1为资源)

I am trying to create a directory with a PHP file in it (that part works).

Now I am trying to open that PHP file and put in data, but I get error:

Warning: fwrite() expects parameter 1 to be resource, string given in C:\wamp\www\dev 3\1\index2.php on line 13

and

Warning: fclose() expects parameter 1 to be resource, string given in C:\wamp\www\dev 3\1\index2.php on line 14

Here is my code:

<?php
$directory = substr(md5(rand(1000,10000)),2,8);
mkdir($directory);
$dir = './'.$directory.'/index.php';
$upload = fopen($dir,'x');
$data = '
data data data

';
fopen($dir, "w");
fwrite($dir, $data);
fclose($dir);
?>
  • 写回答

1条回答 默认 最新

  • douhai5835 2016-10-09 20:00
    关注

    You need a resource handle and not string, as your error gracefully said :)

    Use $upload instead of $dir:

    <?php
    $directory = substr(md5(rand(1000,10000)),2,8);
    mkdir($directory);
    $dir = './'.$directory.'/index.php';
    $upload = fopen($dir,'x');
    $data = '
    data data data
    
    ';
    /*fopen($dir, "w");
    fwrite($dir, $data);
    fclose($dir);
    */
    fopen($upload, "w");
    fwrite($upload, $data);
    fclose($upload);
    ?>
    
    评论

报告相同问题?

悬赏问题

  • ¥15 stata安慰剂检验作图但是真实值不出现在图上
  • ¥15 c程序不知道为什么得不到结果
  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题