PHP exec()命令无法打开文件

时间:2015-02-13 19:25:20

标签: php command

为什么我的PHP exec()命令之一无法打开文件?

在我的PHP脚本中,有三个exec()命令,所有这些命令都可以打开位于$ _SERVER [' DOCUMENT_ROOT']中的文件。其中两个命令也可以打开子目录中的文件(所有目录和文件具有相同的权限),但其中一个命令( case" 3" )不能。我在终端中测试了3个命令作为相同的Apache用户,在相同的子目录中,它们都工作了。我还在PHP CLI中测试了脚本,他们也在那里工作。以下是代码片段:

switch($_POST['Convert']) 
    {
        case "1":
            $FileNameConvert .= ".pdf";
            $command = "convert '{$FileName}' '{$FileNameConvert}'";
            break;
        case "2":
            $FileNameConvert .= ".html";
            $command = "pdftohtml '{$FileName}' '{$FileNameConvert}'";
            break;
        case "3":
            $FileNameConvert = "RotatedPDF.pdf";
            $command = "pdftk '{$FileName}' cat 1-endsouth output '{$FileNameConvert}'";
            break;
        default:
            echo "error";
            exit();
    }
    echo exec($command,$op,$result);

Apache的错误日志显示:

I/O Error: Couldn't open file '$FileName': No such file or directory.
Error: Unable to find file.
Error: Failed to open PDF file: 
$FileName  

为什么以下命令不起作用?

$command = "pdftk '{$FileName}' cat 1-endsouth output '{$FileNameConvert}'";  

0 个答案:

没有答案