PHP中exec函数和shell_exec函数的区别


Posted in PHP onAugust 20, 2014

这两个函数都是执行Linux命令函数,不同的是获取返回结果不一样,exec只能获取最后一行数据,shell_execu则可以获取全部数据。

假如脚本路径下有如下文件:

-bash-4.1# ll

总用量 12

-rw-rw-r--. 1 www web 133  7月 16 15:00 a.php

-rw-r--r--. 1 lee web  59  2月 29 17:05 b.php

-rw-r--r--. 1 lee web  81  3月  8 17:00 c.php

exec例子
<?php

/**

 * exec与shell_exec的区别

 * 琼台博客

 */

$data = exec('/bin/ls -l');

echo '<pre>';

print_r($data);

echo '</pre>';

?>

执行结果
-rw-r--r--. 1 lee web  81 Mar  8 17:00 c.php

shell_exec例子
<?php

/**

 * exec与shell_exec的区别

 * 琼台博客

 */

$data = shell_exec('/bin/ls -l');

echo '<pre>';

print_r($data);

echo '</pre>';

?>

执行结果
total 12

-rw-rw-r--. 1 www web 139 Jul 16  2012 a.php

-rw-r--r--. 1 lee web  59 Feb 29 17:05 b.php

-rw-r--r--. 1 lee web  81 Mar  8 17:00 c.php

所以平时使用exec函数的童鞋注意了,如果你需要获取全部返回信息,就应该使用shell_exec函数,当然,如果命令执行结果只有一行返回信息,那么使用哪个都无所谓。
PHP 相关文章推荐
一段php加密解密的代码
Jul 16 PHP
PHP var_dump遍历对象属性的函数与应用代码
Jun 04 PHP
php flv视频时间获取函数
Jun 29 PHP
pdo中使用参数化查询sql
Aug 11 PHP
php安全之直接用$获取值而不$_GET 字符转义
Jun 03 PHP
Codeigniter购物车类不能添加中文的解决方法
Nov 29 PHP
分享一则PHP定义函数代码
Feb 26 PHP
浅谈php的优缺点
Jul 14 PHP
如何把php5.3版本升级到php5.4或者php5.5
Jul 31 PHP
PHP数据库操作三:redis用法分析
Aug 16 PHP
PHP配置ZendOpcache插件加速
Feb 14 PHP
PHP时间相关常用函数用法示例
Jun 03 PHP
实例讲解PHP面向对象之多态
Aug 20 #PHP
图解找出PHP配置文件php.ini的路径的方法
Aug 20 #PHP
Linux下PHP连接Oracle数据库
Aug 20 #PHP
Win7 64位系统下PHP连接Oracle数据库
Aug 20 #PHP
对PHP新手的一些建议(PHP学习经验总结)
Aug 20 #PHP
访问编码后的中文URL返回404错误的解决方法
Aug 20 #PHP
PHP中使用localhost连接Mysql不成功的解决方法
Aug 20 #PHP
You might like
php socket方式提交的post详解
2008/07/19 PHP
php连接odbc数据源并保存与查询数据的方法
2014/12/24 PHP
浅析Yii2集成富文本编辑器redactor实例教程
2016/04/25 PHP
PHP读书笔记_运算符详解
2016/07/01 PHP
jquery实现每个数字上都带进度条的幻灯片
2013/02/20 Javascript
减少访问DOM的次数提升javascript性能
2014/02/24 Javascript
javascript实现十六进制颜色值(HEX)和RGB格式相互转换
2014/06/20 Javascript
javascript中sort()的用法实例分析
2015/01/30 Javascript
信息页文内画中画广告js实现代码(文中加载广告方式)
2016/01/03 Javascript
js阻止浏览器默认行为的简单实例
2016/05/15 Javascript
如何用JS判断两个数字的大小
2016/07/21 Javascript
jQuery居中元素scrollleft计算方法示例
2017/01/16 Javascript
JavaScript数据结构之二叉树的查找算法示例
2017/04/13 Javascript
解决vue中修改export default中脚本报一大堆错的问题
2018/08/27 Javascript
Vue 中的受控与非受控组件的实现
2018/12/17 Javascript
JS正则表达式封装与使用操作示例
2019/05/15 Javascript
微信小程序判断页面是否从其他页面返回的实例代码
2019/07/03 Javascript
解决layer图标icon不加载的问题
2019/09/04 Javascript
vue实现Input输入框模糊查询方法
2021/01/29 Javascript
js实现打字小游戏
2019/12/17 Javascript
javascript设计模式 ? 适配器模式原理与应用实例分析
2020/04/13 Javascript
分享一款超好用的JavaScript 打包压缩工具
2020/04/26 Javascript
[02:44]完美大师赛主赛事淘汰赛第二日观众采访
2017/11/24 DOTA
使用Python的Twisted框架实现一个简单的服务器
2015/04/16 Python
python多线程socket编程之多客户端接入
2017/09/12 Python
python处理数据,存进hive表的方法
2018/07/04 Python
Python协程 yield与协程greenlet简单用法示例
2019/11/22 Python
浅谈Python访问MySQL的正确姿势
2020/01/07 Python
python中温度单位转换的实例方法
2020/12/27 Python
资深生产主管自我评价
2013/09/22 职场文书
财务管理个人自荐书范文
2013/11/24 职场文书
5.12护士节演讲稿
2014/04/30 职场文书
爱护公物标语
2014/06/24 职场文书
Django分页器的用法你都了解吗
2021/05/26 Python
 python中的元类metaclass详情
2022/05/30 Python