91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

php 執行shell命令 打印錯誤信息

發布時間:2020-06-21 22:04:02 來源:網絡 閱讀:6113 作者:wz669 欄目:web開發
$cmd = "rm 1.txt";//刪除一個不存在的文件,查看報錯信息
$res = doShell($cmd);
var_dump($res);
//該函數沒有限制條件,可以直接放在代碼中使用
function doShell($cmd,$cwd=null)
{
    $descriptorspec = array(
        0 => array("pipe", "r"),    // stdin
        1 => array("pipe", "w"),    // stdout
        2 => array("pipe", "w")     // stderr
    );

//        $cmd = './test.sh';  // 替換為你要執行的shell腳本
    /*
     * 返回值
     *     返回表示進程的資源類型, 當使用完畢之后,請調用 proc_close() 函數來關閉此資源。 如果失敗,返回 FALSE。
     * cmd 要執行的命令
     * descriptorspec 一個索引數組。
     *      數組的鍵表示描述符, 0 表示標準輸入(stdin),1 表示標準輸出(stdout),2 表示標準錯誤(stderr)
     *      數組元素值表示 PHP 如何將這些描述符傳送至子進程。
     *                  pipe (第二個元素可以是: r 向進程傳送該管道的讀取端,w 向進程傳送該管道的寫入端),
     *                    以及 file(第二個元素為文件名)。
     * pipes
     *      將被置為索引數組, 其中的元素是被執行程序創建的管道對應到 PHP 這一端的文件指針。
     * cwd
     *      要執行命令的初始工作目錄。 必須是 絕對 路徑, 設置此參數為 NULL 表示使用默認值(當前 PHP 進程的工作目錄)
     * env
     *      要執行的命令所使用的環境變量。 設置此參數為 NULL 表示使用和當前 PHP 進程相同的環境變量。
     *
     * */
    $proc = proc_open($cmd, $descriptorspec, $pipes, $cwd, null);
    // $proc為false,表明命令執行失敗
    if ($proc == false) {
        return false;
        // do sth with HTTP response
    } else {
        $stdout = stream_get_contents($pipes[1]);
        fclose($pipes[1]);
        $stderr = stream_get_contents($pipes[2]);
        fclose($pipes[2]);
        $status = proc_close($proc);  // 釋放proc
    }
    $data = array(
        'stdout' => $stdout,
        'stderr' => $stderr,
        'retval' => $status
    );

    return $data;
}


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

开封市| 德令哈市| 阿巴嘎旗| 乐都县| 昌宁县| 武乡县| 静乐县| 石柱| 嘉鱼县| 锡林郭勒盟| 达州市| 常州市| 筠连县| 涞水县| 长沙市| 施秉县| 杭锦后旗| 许昌县| 三穗县| 措勤县| 阿克苏市| 文成县| 武邑县| 汤原县| 黄石市| 崇左市| 四川省| 长阳| 彭山县| 崇义县| 苏尼特左旗| 安吉县| 化隆| 靖宇县| 津南区| 丘北县| 郓城县| 墨玉县| 蓬莱市| 湛江市| 宁武县|