PHP警告:proc_open():CreateProcess失败,错误代码-267

Sam*_*son 4 php windows-server

像下面这样的proc_open调用失败,并出现上述错误。

<?php
$proc = proc_open($cmd, $ds, $pipes, '/tmp', array());
Run Code Online (Sandbox Code Playgroud)

$cmd直接执行该命令后,该命令即可正常工作。

Sam*_*son 6

该问题与正在执行的实际命令无关。

错误代码267ERROR_DIRECTORY“目录名称无效。” 在这种情况下,仅表示该/tmp目录在运行代码的驱动器上不存在。

代替/tmp,使用sys_get_temp_dir()(可以假设它将一直存在)。