麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 語言 > PHP > 正文

PHP中exec與shell_exec函數區別

2024-09-04 11:48:48
字體:
來源:轉載
供稿:網友

這兩個函數都是執行Linux命令函數,不同的是獲取返回結果不一樣,exec只能獲取最后一行數據,shell_execu則可以獲取全部數據.

假如腳本路徑下有如下文件:

-bash-4.1# ll 

總用量 12

-rw-rw-r--. 1 www web 133  7月 16 15:00 a.php

-rw-r--r--. 1 lee web  59  2月 29 17:05 b.php

-rw-r--r--. 1 lee web  81  3月  8 17:00 c.php

先看一下php手冊對這二個函數的解釋:

exec --- 執行外部程式

語法:string exec(string command [,array &output [,int &return_var]])

說明:exec( )執行給予的命令command,不過它并不會輸出任何東西,它簡單的從命令的結果中傳回最后一行,如果你需要去執行一個命令,并且從命令去取得所有資料時,可以使用passthru( )這個函數.

如果有給予參數array,則指定的數組將會被命令所輸出的每一行填滿,注意:如果數組先前已經包含了一些元素的話,exec( )將會把它附加在數組的后面,如果你不想要此函數附加元素的話,你可以在傳遞此數組給exec( )之前呼叫unset( ).

exec例子,代碼如下:

  1. <?php  
  2. /**  
  3.  * exec與shell_exec的區別  
  4.  * 瓊臺博客 Vevb.com 
  5.  */ 
  6. $data = exec('/bin/ls -l');  
  7. echo '<pre>';  
  8. print_r($data);  
  9. echo '</pre>';  
  10. ?> 
  11. //執行結果 
  12. -rw-r--r--. 1 lee web  81 Mar  8 17:00 c.phpshell_exec例子 
  13. shell_exec() 

shell_exec() 命令行實際上僅是反撇號 (`) 操作符的變體,如果您編寫過 shell 或 Perl 腳本,您就知道可以在反撇號操作符內部捕捉其他命令的輸出,例如,清單 1 顯示了如何使用反撇號在當前目錄中獲取每個文本(.txt)的單詞計數.

在 shell_exec()中運行相同的命令,代碼如下:

  1. <?php 
  2.  
  3. $results 
  4. =  
  5. shell_exec 
  6. wc -w *.txt 
  7. echo 
  8. $results 
  9. ?> 

獲得的結果與從 shell 腳本得到的一樣.

exec與shell_exec的區別,代碼如下:

  1. <?php  
  2. /**  
  3.  *   
  4.  * 瓊臺博客  
  5.  */ 
  6. $data = shell_exec('/bin/ls -l');  
  7. echo '<pre>';  
  8. print_r($data);  
  9. echo '</pre>';  
  10. ?> 
  11. //執行結果 
  12.  total 12 
  13. -rw-rw-r--. 1 www web 139 Jul 16  2012 a.php 
  14. -rw-r--r--. 1 lee web  59 Feb 29 17:05 b.php 
  15. -rw-r--r--. 1 lee web  81 Mar  8 17:00 c.php 

所以平時使用exec函數的童鞋注意了,如果你需要獲取全部返回信息,就應該使用shell_exec函數,當然,如果命令執行結果只有一行返回信息,那么使用哪個都無所謂.

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 久久精品a一级国产免视看成人 | 国产精品av久久久久久无 | 久久国产午夜 | 日本看片一区二区三区高清 | 777午夜精品视频在线播放 | 91情侣在线偷精品国产 | 欧产日产国产精品99 | 免费看污视频在线观看 | 欧美日韩在线免费观看 | 黄色毛片视频在线观看 | 免费久久精品 | 在线观看免费污视频 | 国产精品亚洲三区 | 91精品动漫在线观看 | 国产亚洲综合一区二区 | 国产免费久久久 | 黄色大片免费看 | 日韩黄色片免费看 | 老师你怎么会在这第2季出现 | xxxx69hd一hd72| 国产一区二区观看 | 全黄裸片武则天一级第4季 九色p | 久久久青青草 | 99欧美视频 | 亚洲精品午夜在线 | 欧美成人精品一区 | 色婷婷久久久亚洲一区二区三区 | www.48xx.com| 久久久一区二区精品 | 日本高清视频网站www | 亚洲成人在线免费 | 国产精品刺激对白麻豆99 | av电影在线观看网站 | 欧美日本综合 | 日韩av电影免费在线观看 | 国产一区二区高清在线 | 一级成人欧美一区在线观看 | 日韩大片在线永久观看视频网站免费 | 美女黄色影院 | 精品一区二区三区免费看 | 国产人成免费爽爽爽视频 |