How to detect the finish with file_put_contents()

2019-09-14 10:10发布

In PHP, i will write (create) the file using file_put_contents($filename, $data);
It is ok, but i want to detect the finish event of process.

Currently, the page is showing loading status.
This is currently the way i can know it is finish or not.

I want to detect with the code.

标签: php file detect
3条回答
太酷不给撩
2楼-- · 2019-09-14 10:22

This is a blocking, I/O call, so it finishes when the function call returns. The return value is the number of bytes written (upon success).

查看更多
贼婆χ
3楼-- · 2019-09-14 10:26

Retrieve the Content-Length header from the remote location first. You can use get_headers to do that. Like so:

$headers = get_headers($url, 1);
echo "To download: " . $headers['Content-Length'] . " bytes.<br />";
查看更多
姐就是有狂的资本
4楼-- · 2019-09-14 10:36

It puts everything on hold until it's over

So you could use something like this to determine when it has finished writing the file.

echo "The file's contents are now being written, please wait.";
file_put_contents($filename, $data);
echo "The file's contents have been written.";
查看更多
登录 后发表回答