PHP后台脚本无法通过上传访问临时文件

时间:2018-11-12 12:58:22

标签: php shell background upload

我有一个PHP脚本,该脚本接收上载并通过shell_exec()推迟对该上载到后台脚本的处理。

但是后台脚本似乎无法访问上传的临时文件。

接收方脚本

$file_loc = $_FILES['file']['tmp_name'];
echo $file_loc.' exists = '.file_exists($file_loc);
shell_exec('php background.php -i='.$file_loc.' >report.txt &');

此输出

  

{文件路径}存在= 1

Background.php

$args = getopt('i:');
$file_loc = $args['i'];
echo $file_loc.' exists = '.file_exists($file_loc);

在result.txt中,我得到

  

{文件路径}存在=

即不存在。 我需要做些什么才能允许后台脚本访问tmp文件的位置?

1 个答案:

答案 0 :(得分:1)

您应将上传的文件移至新的目的地以处理文件。

$destination = "FOLDER_NAME/".$_FILES['file']['tmp_name'];
$file_loc = $_FILES['file']['tmp_name'];
move_uploaded_file ( $file_loc, $destination )
echo $destination.' exists = '.file_exists($destination);
shell_exec('php background.php -i='.$destination.' >report.txt &');