PHP的system函数

司徒瀚
2023-12-01

PHP代码如下: 

<?php

$v = system('netstat -tnlp',$shell_return);

var_dump($shell_return);
var_dump($v);

执行结果:

Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      1/systemd           
tcp        0      0 192.168.122.1:53        0.0.0.0:*               LISTEN      7311/dnsmasq        
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      6987/sshd           
tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN      6978/cupsd          
tcp        0      0 127.0.0.1:6011          0.0.0.0:*               LISTEN      16181/sshd: myLinux@pts 
tcp6       0      0 :::3306                 :::*                    LISTEN      7361/mysqld         
tcp6       0      0 :::111                  :::*                    LISTEN      1/systemd           
tcp6       0      0 :::8080                 :::*                    LISTEN      7689/httpd          
tcp6       0      0 :::80                   :::*                    LISTEN      7689/httpd          
tcp6       0      0 :::22                   :::*                    LISTEN      6987/sshd           
tcp6       0      0 ::1:631                 :::*                    LISTEN      6978/cupsd          
tcp6       0      0 ::1:6011                :::*                    LISTEN      16181/sshd: myLinux@pts 
tcp6       0      0 :::8000                 :::*                    LISTEN      7689/httpd          
int(0)
string(90) "tcp6       0      0 :::8000                 :::*                    LISTEN      7689/httpd"

结论如下:

system($shell, $shell_return):

  1. $shell: 是shell命令, 如'netstat -tnlp'
  2. $shell_return: shell命令执行的返回结果,命令执行成功返回0, 否则不为0
  3. 该函数执行后,直接在终端窗口打印命令执行的结果
  4. 函数的返回值是命令的执行结果的最后一行
 类似资料: