博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
php 执行外部命令exec() system() passthru()
阅读量:6657 次
发布时间:2019-06-25

本文共 1383 字,大约阅读时间需要 4 分钟。

php 执行部命令exec() system() passthru()

通常用c写一个外部小程序,然后使用上述命令可以在php中调用

1. exec()

string exec ( string $command [, array &$output [, int &$return_var ]] )

$command要执行的外部程序

$output 会把程序中所有的输出结果输出到该数组中;如c中的printf(); 可以利用这个往外部返多个值;

$return_var 该程序执行结果的返回值;比对 C程序中 的return 0; 

string 返回值即程序输出的最后一个行,即最后一个printf()

如下示例:

test.c

#include 
int main(int argc, const char * argv[]) { if (argc==2) { printf("this is parm %s\n",argv[1]); } printf("Hello, World!\n"); return 0;}

 

编译test.c到可执行文件

cocoaPro:Desktop cocoajin$ gcc -o test main.c cocoaPro:Desktop cocoajin$ ./test pppthis is parm pppHello, World!cocoaPro:Desktop cocoajin$ ls |grep testtestcocoaPro:Desktop cocoajin$

test.php

";exec("./test 'aaa'", $outArry,$dret); echo $dret.'
'; echo var_dump($outArry); ?>

访问test.php输出

hello world from php 0array(2) { [0]=> string(16) "this is parm aaa" [1]=> string(13) "Hello, World!" }

 

注意上面的test 程序,如果php的环境是linux的,就要用linux下的gcc编译,winddows环境,就要用win下的gcc编译;

  在linux下编译的test程序,在win下是不能用的

 

2.system()

string system ( string $command [, int &$return_var ] )

$command 要执行的命令

$return_var 程序的返回值;即C程序中的return值0;

string 函数返回值是,程序执行的最后一行输出;

 

3. passthru()

void passthru ( string $command [, int &$return_var ] )

$command 要执行的命令

$return_var 程序的返回值;即C程序中的return值0;

无返回值;

 

总结:

这几个命令功能真强大,php结合C,可以做很多事情了!

参考:

 

 

 

转载于:https://www.cnblogs.com/cocoajin/p/5805679.html

你可能感兴趣的文章
有关php天气论文概述,关于天气网的10篇文章推荐
查看>>
基于matlab的雷达和通信系统,基于MATLAB的多功能通信信号源仿真
查看>>
python改了代码没有生效,关于python:为什么我在使用这段代码时没有更改列表?...
查看>>
linux下php测试文本,php连接linux命令函数自己测试心得
查看>>
php framework interop group,PHP最佳实践系列之标准
查看>>
oracle中resource权限,Oracle内置角色connect与resource的权限
查看>>
微软 Build 2017 开发者大会:Azure 与 AI 的快速发展
查看>>
SpreadJS纯前端表格控件V11.1震撼来袭
查看>>
谈谈多年的创业之路和网络生涯
查看>>
值钱的Facebook和不拜金的扎克伯格
查看>>
一个前百度工程师看百度的狼性
查看>>
收到“2011年度十大杰出IT博客”奖杯及精美奖品
查看>>
oracle等待事件3构造一个Direct Path write等待事件和构造一个Log File Sync等待事件
查看>>
Shell脚本监控CPU、内存和硬盘利用率
查看>>
惠普中国区副总裁、软件集团大中华区总经理于志伟:大数据从5%突破
查看>>
【赏析】15个非常棒的使用CSS3的设计组合
查看>>
SQL养成一个好习惯是一笔财富
查看>>
How To Write A Simple Web Crawler In Ruby
查看>>
我的淘蝌蚪
查看>>
【翻译】(12)NDK GDB
查看>>