exec(), passthru(), system() etc.

<?php

echo ‘<pre>‘;

exec(‘ls -la‘, $result);

print_r($result);

echo ‘<hr/>‘;

$result = passthru(‘ls -la‘);

echo ‘<hr/>‘;

$result = system(‘ls -la‘);

echo ‘<hr/>‘;

echo $result = `ls -la`;

echo ‘<hr/>‘;

print_r(getenv(‘HTTP_REFERER‘));

putenv("HOME=$home");

时间: 2024-08-05 13:05:39

exec(), passthru(), system() etc.的相关文章

PHP在Linux下Apache环境中执行exec,system,passthru等服务器命令函数

若在服务器中使用php test.php运行exec,system,passthru等命令相关的脚本能成功运行,在web页面却没反应,则 查看下apache的error_log日志,一般是这几个函数 system() has been disabled for security reasons in /var/www/html/test.php on line 34 报错了. 看下php.ini中的disable_functions 有没有禁用了这些函数,删除禁用后保存. 重启下php和Apac

转 PHP中exec、system等函数调用linux命令问题

PHP中exec.system等函数调用linux命令问题 先小说两句:今天研究了下PHP调用LINUX命令的功能,一开始怎么做都调用不成功,试了好久才终于成功了,所以发出来分享一下.下面我将详细介绍: PHP中提供了几个调用linux命令的函数,exec.system.passthru,函数使用请参考手册,这里不具体介绍.下面我以exec函数为例具体介绍: 比如LINUX中修改服务器时间命令是 /bin/date -s '2010-05-28 13:10',我们通过php函数exec调用这个命

PHP:exec与system区别

在PHP中调用外部命令,可以用exec 及 system来实现: system() 原型:string system (string command [, int return_var]) system()函数很其它语言中的差不多,它执行给定的命令,输出和返回结果.第二个参数是可选的,用来得到命令执行后的状态码. 返回结果 成功返回0,           失败(命令不存在等原因)   返回   非0值 exec() 原型:string exec (string command [, strin

【转】PHP 执行系统外部命令 system() exec() passthru()

PHP作为一种服务器端的脚本语言,象编写简单,或者是复杂的动态网页这样的任务,它完全能够胜任.但事情不总是如此,有时为了实现某个功能,必须借助于操作系统的外部程序(或者称之为命令),这样可以做到事半功倍. 区别: system() 输出并返回最后一行shell结果. exec() 不输出结果,返回最后一行shell结果,所有结果可以保存到一个返回的数组里面. passthru() 只调用命令,把命令的运行结果原样地直接输出到标准输出设备上. 相同点:都可以获得命令执行的状态码 demo: //s

PHP 执行系统外部命令 system() exec() passthru()

PHP中调用外部命令,可以用如下三种方法来实现: 方法一:用PHP提供的专门函数(四个): PHP提供4个专门的执行外部命令的函数:exec(), system(), passthru(), shell_exec() 1)exec() 原型: string exec ( string $command [, array &$output [, int &$return_var ]] ) 说明: exec执行系统外部命令时不会输出结果,而是返回结果的最后一行.如果想得到结果,可以使用第二个参

第6章 进程控制(3)_wait、exec和system函数

5. 等待函数 (1)wait和waitpid 头文件 #include <sys/types.h> #include <sys/wait.h> 函数 pid_t wait(int* status); pid_t waitpid(pid_t pid, int* status, int options); 返回值 成功返回子进程ID,出错返回-1 功能 等待子进程退出并回收,防止僵尸进程的产生 参数 (1)status参数: ①为空时,代表任意状态结束的子进程: ②不为空时,则等待指

一、进程与信号之exec函数system函数

exec函数: 子进程调用exec函数执行另一个程序,exec函数进程完全由新程序代替,替换原有程序正文,数据,堆,栈段 #include <unistd.h> extern char **environ; int execl(const char *path,const char *arg, ...); int execlp(const char *file, const char *arg, ...); int execle(const char *path,const char *arg

fork+exec 与system,popen区别

1.fork + exec fork用来创建一个子进程.一个程序一调用fork函数,系统就为一个新的进程准备了前述三个段,首先,系统让新的进程与旧的进程使用同一个代码段,因为它们的程序还是相同的,对于数据段和堆栈段,系统则复制一份给新的进程,这样,父进程的所有数据都可以留给子进程,但是,子进程一旦开始运行,虽然它继承了父进程的一切数据,但实际上数据却已经分开,相互之间不再有影响了,也就是说,它们之间不再共享任何数据了.而如果两个进程要共享什么数据的话,就要使用另一套函数(shmget,shmat

Perl和操作系统交互(一):system、exec和反引号

调用操作系统命令:system函数 system函数可以直接让perl调用操作系统中的命令并执行. system入门示例 例如: #!/usr/bin/perl system 'date +"%F %T"'; system 'echo hello world'; system 'echo',"hello","world"; 执行结果: 2018-06-21 18:32:50 hello world hello world 注意system的参数可