- system()函数
作用:将字符串作为OS命令执行,自带输出功能。
格式:string system ( string $command [, int &$return_var ] )//$command为执行的命令,&return_var可选,用来存放命令执行后的状态码。
- passthru()函数
作用:将字符串作为OS命令执行,不需要输出执行结果,且输出全部的内容。
格式:void passthru ( string $command [, int &$return_var ] )//和system函数类似,$command为执行的命令,&return_var可选,用来存放命令执行后的状态码.
- exec()函数
作用:将字符串作为OS命令执行,需要输出执行结果,且它只会输出最后一行的内容。
格式:string exec ( string $command [, array &$output [, int &$return_var ]] )/*
$command是要执行的命令
$output
是获得执行命令输出的每一行字符串,$return_var
用来保存命令执行的状态码(检测成功或失败)*/
- shell_exec()函数
作用:将字符串作为OS命令执行,需要输出执行结果,且输出全部的内容。
格式:string shell_exec( string &command)//shell_exec()函数默认无回显,通过 echo 可将执行结果输出到页面
- popen()/proc_open()函数
作用:该函数也可以将字符串当作OS命令来执行,但是该函数返回的是文件指针而非命令执行结果.
格式:resource popen ( string $command , string $mode )/*
函数需要两个参数,一个是执行的命令command,另外一个是指针文件的连接模式mode,有r和w代表读和写。
函数不会直接返回执行结果,而是返回一个文件指针,但是命令已经执行。
popen()打开一个指向进程的管道,该进程由派生给定的command命令执行而产生。
返回一个和fopen()所返回的相同的文件指针,只不过它是单向的(只能用于读或写)并且必须用pclose()来关闭。
此指针可以用于fgets(),fgetss()和 fwrite()。proc_open()函数与其类似,只不过可以提供双向管道。
- 反引号``
作用:[``]反引号里面的代码也会被当作OS命令来执行.
格式:shell_exec() 函数实际上仅是反撇号 (`) 操作符的变体,当禁用shell_exec时,` 也不可执行。
- pcntl_exec()函数
作用:在当前进程空间执行指定程序。
格式:void pcntl_exec ( string $path [, array $args [, array $envs ]] )/*path是可执行二进制文件路径或一个在文件第一行指定了 一个可执行文件路径标头的脚本
args是一个要传递给程序的参数的字符串数组。*/
标签:web,string,命令,exec,2023.2,command,------,执行,函数 From: https://www.cnblogs.com/wlwl1234/p/17095036.html