判斷PHP的exec函式是否執行成功

2021-08-03 12:33:04 字數 1238 閱讀 8775

做乙個**發布的系統,需要用到php的exec函式來執行linux下的命令和git,svn命令,如何判斷php的exec函式是否執行成功呢?

寫個php檔案來做實驗:

exec函式第乙個引數是執行的命令,第二個引數是執行的結果,第三個引數是執行的狀態。

php

1

2

3

4

5

6

7

8

9

<?php

exec

('ls'

,$log

,$status);

print_r

($log);

print_r

($status);

echo

php_eol

;

執行這個php檔案:

這裡$log,$status輸出結果如圖。

但是$status為0,給人的感覺是執行失敗,其實不是,這是exec執行成功。

改一下這個php檔案,給exec第乙個引數乙個錯誤的命令。

如:exec(『lsaa』,$log,$status).

再次執行,執行結果如圖:

這裡$status確是有值的。

那麼證明$status為0的時候表示exec執行是成功的。這裡php官方手冊上並沒有明確說明。

最終這個執行命令的方法如下:

php exec執行命令

php

1

2

3

4

5

6

7

8

9

10

11

public

function

runlocalcommand

($command)

去除了日誌記錄和其他的判斷。

注意這裡:

php

1$this

->

status=!

$status;

返回狀態的時候取相反的值!

(原文**:

PHP中如何判斷exec函式執行成功?

前言 做乙個 發布的系統,需要用到php的exec函式來執行linux下的命令和git,svn命令,如何判斷php的exec函式是否執行成功呢?解決方案 寫個php檔案來做實驗 exec函式第乙個引數是執行的命令,第二個引數是執行的結果,第三個引數是執行的狀態。print r log prwww.c...

php呼叫exec函式

在php中,經常遇到php呼叫外部指令碼程式,如exec,system函式 本環境在windows平台下測試 在php中呼叫perl指令碼,perl檔案內容如下 c xampp perl bin perl usejson useencode my val helloworld n my jsonco...

PHP 執行exec函式

exec 執行外部程式 語法 string exec string command array output int return var exec函式解析 exec語法 string exec string command,string array int return var exec返回值 字...