PHP中exec与system用法区别分析

yipeiwu_com6年前PHP代码库

本文实例讲述了PHP中exec与system用法区别,分享给大家供大家参考之用。具体方法如下:

一般来说,在PHP中调用外部命令,可以用exec及system来实现:

system()

原型:string system (string command [, int return_var])
system()函数很其它语言中的差不多,它执行给定的命令,输出和返回结果。第二个参数是可选的,用来得到命令执行后的状态码。

返回结果:

成功返回0,  
失败(命令不存在等原因)   返回   非0值

exec()

原型:string exec (string command [, string array [, int return_var]])
exec ()函数与system()类似,也执行给定的命令,但不输出结果,而是返回结果的最后一行。虽然它只返回命令结果的最后一行,但用第二个参数array 可以得到完整的结果,方法是把结果逐行追加到array的结尾处。所以如果array不是空的,在调用之前最好用unset()最它清掉。只有指定了第二 个参数时,才可以用第三个参数,用来取得命令执行的状态码。

使用例子如下:

exec("/bin/ls -l"); 
exec("/bin/ls -l", $res); 
exec("/bin/ls -l", $res, $rc); 

希望本文所述对大家PHP程序设计的学习有所帮助。

相关文章

在PHP中实现Javascript的escape()函数代码

这里,一般都需要预先将正常的字符串编码成 JavaScript unescape() 函数能够解译的格式,以 PHP 为例,可以使用以下函数实现 Javascript 中 escape(...

php 无限分类的树类代码

复制代码 代码如下:<?php /** by lenush; */ class Tree { var $data = array(); var $child = array(-1=...

php从右向左/从左向右截取字符串的实现方法

语法: substr(要截取的字符串, 开始位置 ,截取长度) 开始位置从0开始,如果想从第一个字符开始截取,则开始位置参数为0. 最后一个参数是可选的,如果只提供开始位置,则从开始位置...

PHP提取数据库内容中的图片地址并循环输出

复制代码 代码如下: /* 1 (?s) 代表 Pattern.DOTALL,也就是匹配换行,允许 img里出现在多行 2 .*?代表非贪婪匹配任意字符,直到后面的条件出现 3 ?: 代...

解析php中获取url与物理路径的总结

在这里我想总结一下取得地址栏内URL及文件所属的我更路径的一些信息:运用$_SERVER[ ]我们可以来完成许多事情:它是一个包含头部(headers),路径信息及脚本位置的数组,数组的...