簡體   English   中英

使用PHP從bash腳本獲取返回值

[英]Get return value from a bash script with PHP

如何用PHP表示shell文件?

我有一個名為sync.sh的文件,那么如何在php中運行該文件以及如何在完成執行后獲取響應? 我認為shell_exec()將有助於觸發文件,但是如何才能獲得腳本完成任務的響應?

看一下exec()函數。 您可以傳入一個return_var,它將保存shell腳本中的退出代碼。

$out = array();
$status = -1;

exec( '/path/to/sync.sh', $out, $status );

if ( $status != 0 ) {
    // shell script indicated an error return
}

需要注意的一點是,腳本將使用Web服務器的權限運行,而不是作為用戶自己運行。

另外,請務必注意文檔與安全相關的警告:

當允許將用戶提供的數據傳遞給此函數時,請使用escapeshellarg()或escapeshellcmd()以確保用戶不會欺騙系統執行任意命令。

根據文件

返回值

執行命令的輸出,如果發生錯誤,則為NULL。

只需獲取該函數的返回值。

$result = shell_exec('sync.sh');

$result將包含您想要的內容。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM