① php exec() 運行另一個php文件,不等待返回值
可以後台運行,但是建議使用popen和pclose代替exec。同時需要注意php是否添加了環境變數。
<?php
//windows和linux下後台執行方式
$cmd='php2.php';
if(strtoupper(substr(PHP_OS,0,3))=='WIN')
{
pclose(popen('start/B'.$cmd,'r'));
}else
{
pclose(popen($cmd.'>/dev/null&','r'));
}
② 怎樣在php中執行exec命令
exec 或者 system 都可以調用cmd 的命令
直接上代碼:
復制代碼 代碼如下:
< ?php
/** 打開windows的計算器 */
exec('start C:WindowsSystem32calc.exe');
/** php生成windows的批處理文件後,再執行這個批處理文件*/
$filename = 't.bat';
$somecontent = 'C:
';
$somecontent .= 'cd "C:/Program Files/MySQL-Front"';
$somecontent .= '
start MySQL-Front.exe';
if (!$handle = fopen($filename, 'w')) {
echo "不能打開文件 $filename";
exit;
}
/** 首先要確定文件存在並且可寫*/
if (is_writable($filename)) {
/** 那就是當我們使用fwrite()的時候,$somecontent將要寫入的地方
將$somecontent寫入到我們打開的文件中 。*/
if (fwrite($handle, $somecontent) === FALSE) {
echo "不能寫入到文件 $filename";
exit;
}
echo "成功地將 $somecontent 寫入到文件 $filename";
fclose($handle);
} else {
echo "文件 $filename 不可寫";
}
exec($filename);
?>
③ PHP.ini開啟EXEC函數怎麼開啟
1、首先打開php.ini文件,一般默認放在C盤windows目錄下。
④ php的exec調用一個exe程序後程序不執行
php可以調用外部exe程序,如果是在伺服器端執行伺服器端的程序,使用exec函數。 提示一點:php是伺服器端腳本,因此,不能在客戶端執行伺服器端的程序。
⑤ 使用php的exec許可權問題
在php.ini在找到這行
disable_functions
=
exec,system,ini_alter,readlink,symlink,leak,proc_open,popepassthru,chroot,scandir,chgrp,chown,escapeshellcmd,escapeshellarg,shell_exec,proc_get_status,passthru,popen
這些都是禁用的函數,每個函數用逗號分開的,你把exec,刪除了保存就可以了
⑥ PHP怎麼運行EXEC文件
在PHP中調用外部命令,可以用如下三種方法來實現:
1、用PHP提供的專門函數
(1)PHP提供共了3個專門的執行外部命令的函數:system(),exec(),passthru()。
(2)system() 原型:string system (string command [, int return_var])
(3)system()函數很其它語言中的差不多,它執行給定的命令,輸出和返回結果。第二個參數是可選的,用來得到命令執行後的狀態碼。
2、例子:
代碼如下:
<?php
system("/usr/local/bin/webalizer/webalizer");
?>
exec()
(1)原型:string exec (string command [, string array [, int return_var]]) exec
(2)()函數與system()類似,也執行給定的命令,但不輸出結果,而是返回結果的最後一行。雖然它只返回命令結果的最後一行,但用第二個參數array 可以得到完整的結果,方法是把結果逐行追加到array的結尾處。所以如果array不是空的,在調用之前最好用unset()最它清掉。只有指定了第二 個參數時,才可以用第三個參數,用來取得命令執行的狀態碼。
⑦ 如何讓exec自己運行,php頁面繼續運行
在php中,如果出現exec();那麼php是先運行完exec中的外部命令,然後繼續執行接下來的php語句的。有什麼辦法讓exec自己在那運行,php語句不等待,自己運行下去,讓瀏覽器不用等待。謝謝。
Note:
如何程序使用此函數啟動,為了能保持在後台運行,此程序必須將輸出重定向到文件或其它輸出流。 否則會導致 PHP 掛起,直至程序執行結束。
exec("命令 > null");