我有一个问题,我在页面加载时调用PHP函数 – 该函数检查文件是否存在它返回文件名,如果它不存在它运行一个相当资源丰富的脚本并花费时间 – 转换波形图像来自音频文件.问题是音频文件很大,因此创建文件可能需要一些时间,因此如果音频文件没有与之关联的此图像文件,则页面加载需要与进程一样长.
我所追求的是这个函数返回一个占位符图像,如果一个不存在,但在页面加载后继续进行 – 或在后台.因此,理论上,当以后重新加载页面时,将存在正确的图像.
我当前可以返回占位符图像,但随后进程停止并且图像不会生成.这是我到目前为止所拥有的:
function example($file_path, $file_name) {if ($file_path) {
if (file_exists("/path/to/folder/{$file_name}.png")) {
return "/path/to/folder/{$file_name}.png";
}
if (!file_exists("/path/to/folder/{$audio_file_name}.png")) {
return "/path/to/folder/processing.png";
Some stuff in here
return $new image
} return FALSE
正如你所看到的那样,当文件不存在时我就会停止,但我希望这里的东西能够在后台继续.是可能还是我需要一种不同的方法?像一个cron工作或什么?任何帮助赞赏.
解决方法:
然后,您可以生成一个处理信息的作业,并使用“处理”图像快速返回.
使用这种方法,你不会知道什么时候完成.
根据我的经验,这仍然比与操作人员争论编译具有多线程支持的php更容易.
标签:php,function,recursion
来源: https://codeday.me/bug/20190529/1179587.html