English | 简体中文 | 繁體中文
查询

exec()函数—用法及示例

「 存储命令输出的数组 」


函数名:exec() 

适用版本:所有 PHP 版本(包括 PHP 4、PHP 5 和 PHP 7)

用法: exec(string $command, array &$output, int &$return_var): string|false

参数说明: $command:要执行的命令。可以是一个简单命令,也可以是一个带有选项和参数的复杂命令。注意:在 Windows 系统中,命令需要使用双引号括起来。 $output:用于存储命令输出的数组。每行输出会作为数组元素存储在 $output 中。 $return_var:用于存储命令的返回值。如果命令成功执行,则返回值为 0,否则返回一个非零值。

返回值: 如果命令成功执行,则返回最后一行输出;如果命令执行失败或出错,则返回 false。

示例1:执行简单命令

$output = array();
$return_var = 0;
exec('dir', $output, $return_var);
// 输出命令执行结果
print_r($output);
// 输出命令返回值
echo $return_var;

上述示例中,执行了一个简单的命令 dir(Windows 系统下的查看目录命令),将命令输出存储在 $output 数组中,并将命令返回值存储在 $return_var 变量中。最后,使用 print_r() 函数打印命令输出的结果,使用 echo 输出命令的返回值。

示例2:执行带参数的命令

$output = array();
$return_var = 0;
exec('ls -al', $output, $return_var);
// 输出命令执行结果
print_r($output);
// 输出命令返回值
echo $return_var;

上述示例中,执行了一个带有选项和参数的复杂命令 ls -al(列出当前目录下所有文件和文件夹,并显示详细信息),将命令输出存储在 $output 数组中,并将命令返回值存储在 $return_var 变量中。最后,使用 print_r() 函数打印命令输出的结果,使用 echo 输出命令的返回值。

注意事项:

  1. exec() 函数在执行命令时需要操作系统的支持,因此在不同操作系统下命令的使用方式可能会有所差异。
  2. exec() 函数被系统管理员视为潜在的安全风险,使用时需要谨慎,确保只执行可信的命令,并对命令参数进行正确的过滤和验证,以防止命令注入攻击。
补充纠错
上一个函数: Executable::execute()函数
下一个函数: exif_imagetype()函数
热门PHP函数
分享链接