Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 文件放置内容资源id 233_Php - Fatal编程技术网

Php 文件放置内容资源id 233

Php 文件放置内容资源id 233,php,Php,我有一个页面使用文件放置内容来记录日志。当我的文件夹不存在文件时,它将自动创建文件并将日志添加到其中 我的问题是当第一次自动创建文件并将内容放入其中时。它出来了-资源id#233 第二次没有板条箱文件将是正常的没有任何问题 有人知道如何解决这个问题吗?返回一个资源 编写文件并将$data转换为字符串(在资源上调用\uu toString()) 第二次,文件存在。因此,程序不会传递到if条件,而是写入包含JSON的$data 要解决您的问题,只需删除if块 文件说: 如果文件名不存在,则创建该文件

我有一个页面使用文件放置内容来记录日志。当我的文件夹不存在文件时,它将自动创建文件并将日志添加到其中

我的问题是当第一次自动创建文件并将内容放入其中时。它出来了-资源id#233

第二次没有板条箱文件将是正常的没有任何问题

有人知道如何解决这个问题吗?

返回一个
资源

编写文件并将
$data
转换为字符串(在
资源上调用
\uu toString()

第二次,文件存在。因此,程序不会传递到if条件,而是写入包含JSON的
$data

要解决您的问题,只需删除
if

文件说:

如果文件名不存在,则创建该文件。否则,现有文件将被覆盖,除非设置了file_APPEND标志


您知道
$data
变量被覆盖了吗?如果要阅读
文件内容的手册,有“如果文件名不存在,则创建文件”,因此
If
子句是无用的。@u\u mulder谢谢。这是我的第一个anwser,但我在阅读了文档后更改了它。但我把“超控”这句话搞混了。我已经更新了我的anwser。
$data = json_encode($data, JSON_UNESCAPED_UNICODE);

$log = base_path()."/storage/logs/trade.log";

if ( !file_exists ($log) ) {
    $data = fopen($log, "w");
}

file_put_contents($log, $data . PHP_EOL.PHP_EOL, FILE_APPEND);