PHP中如果要直接執行Commnad Line的話,有三個function可以使用
- system()
- exec()
- shell_exec()
system()會直接將結果印出,且只能抓到最後一行,通常用在直接執行的操作上
1 | //return_var為系統回傳碼 |
2 | $last_line = system( "ls -la" , $return_var ); |
3 | echo $last_line . "\t" . $return_var . "\n" ; |
exec()不會印出結果,並會將回傳的結果存成陣列
1 | $last_line = exec ( "ls -la" , $return_arr , $errorCode ); |
2 | echo $last_line ; |
3 | print_r( $return_arr ); |
4 | echo $errorCode ; // 0 為正常執行 |
shell_exec()不會印出結果,並會將回傳的結果存成字串
1 | $line = shell_exec( "ls -la" ); |
2 | echo $last_line ; |