我有一个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文件的位置?
答案 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 &');