php 主进程子进程,PHP中的子进程的任何等价物?

通过双向通信,您可以访问stdin,stdout和stderr的最接近的等价物是

proc_open().

以下是文档中的示例:

$descriptorspec = array(

0 => array("pipe", "r"), // stdin is a pipe that the child will read from

1 => array("pipe", "w"), // stdout is a pipe that the child will write to

2 => array("file", "/tmp/error-output.txt", "a") // stderr is a file to write to

);

$cwd = '/tmp';

$env = array('some_option' => 'aeiou');

$process = proc_open('php', $descriptorspec, $pipes, $cwd, $env);

if (is_resource($process)) {

// $pipes now looks like this:

// 0 => writeable handle connected to child stdin

// 1 => readable handle connected to child stdout

// Any error output will be appended to /tmp/error-output.txt

fwrite($pipes[0], '<?php print_r($_ENV); ?>');

fclose($pipes[0]);

echo stream_get_contents($pipes[1]);

fclose($pipes[1]);

// It is important that you close any pipes before calling

// proc_close in order to avoid a deadlock

$return_value = proc_close($process);

echo "command returned $return_value\n";

}

?>

如果您只需要stdout和stdin,则可以使用popen().

这是我修改过的例子,因为手册很糟糕:

$handle = popen('/path/to/executable', 'r');

$lines = [];

while (!feof($handle))

{

$lines[] = fgets($handle);

}

pclose($handle);

这将把/ path / to / executable的输出读入一行输出行.

你还询问了逃避争论的问题.您可以使用escapeshellarg()执行此操作:

$escapedArg = escapeshellarg($arg);

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/571127.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

oracle只读事物,oracle的只读事务

一致性读是oracle区别于其他数据库的重要特点之一&#xff0c;但一般来说&#xff0c;这个一致性读是sql级别的&#xff0c;只针对单个sql有效。由于业务逻辑需要&#xff0c;我们可能需要在一个事务中的多个sql也能实现读一致性&#xff0c;也就是说&#xff0c;数据源在事务开…

获得网页中元素的位置

网页大小&#xff1a; clientWidth和clientHeight。 最快速的方法&#xff1a;getBoundingClientRect() 获得top, right, bottom, left&#xff0c;是获得元素距离viewport的左上角。 获得元素的相对位置&#xff1a;不断向父元素获得offsetHeight和offsetWidth。 获得元素的绝…

实验一 软件工程准备

1、实验目的与要求 &#xff08;1&#xff09; 学习通过博客园软件开发者学习社区的协作与支持完成软件工程课程学习的技巧和经验。 &#xff08;2&#xff09; 掌握Github操作&#xff1b; 2、实验内容和步骤 任务1&#xff1a;在以下网址提交课程调查问卷&#xff1a;https:/…

matlab气相分解反应动力学,第十二章 化学动力学.ppt

快反应 慢反应 速控法 稳态法 (1) 一级反应 (2) 二级反应 高压时 低压时 RRKM理论 12.7 光化学反应 * 物理化学(下) PHYSICAL CHEMISTRY (11) 碰撞理论 单分子反应理论 过渡态理论 光化学反应 催化反应动力学 本章主要内容&#xff1a; 12 化学动力学基础(二) 反应速率理论 碰撞…

深度学习笔记:优化方法总结(BGD,SGD,Momentum,AdaGrad,RMSProp,Adam)

http://blog.csdn.net/u014595019/article/details/52989301转载于:https://www.cnblogs.com/mdumpling/p/8527799.html

基础题

1&#xff0c;别名&#xff0c;内部&#xff0c;外部&#xff0c;hash优先级&#xff1f; 2&#xff0c;screen协助 1.一台screen -S 协助名称 2.另外一台screen -ls 列出目前开的协助会话&#xff08;session&#xff09;&#xff0c;找到上面协助名称对应的session号。 3. sc…

oracle查询字段精度,【Oracle】查询字段的长度、类型、精度、注释等信息

在mysql中alter命令可以修改字段类型,长度,名称或一些其它的参数,下面我来给大家介绍alter函数修改字段长度与类型的两个命令,希望文章来给各位带来帮助. mysql 修改字段长度 alter table news modify column title varchar(130); alter table 表名 modify column 字段名 …

linux改文件后run,linux下.run文件如何安装与卸载

w 表示可写入&#xff0c;其中 u 表示该档案的拥有者&#xff0c;有个 uninstall 文件&#xff0c; r 表示可读取&#xff0c;利用 chmod 可以藉以控制档案如何被他人所调用。执行./uninstall就ok了 下面是其他网友的补充&#xff1a; 比如安装QT编程软件 安装方法如下 命令第一…

leetcode链表题

1. sort_list Sort a linked list in O(n log n) time using constant space complexity. 分析&#xff1a;时间复杂度是nlogn,所以可以考虑归并排序。取中点&#xff0c;对左边和右边分别递归排序&#xff0c;最后合并。 知识点&#xff1a;快慢指针&#xff0c;用来取链表中点…

linux进程管理之mm_struct,【转】Linux进程管理之SMP负载平衡(续二)

继续来分析balance_tasks()函数,结合代码中的注释,理解这段代码应该很容易,在这里主要分析它的两个重要的子函数,即can_migrate_task()和pull_task().先来看can_migrate_task().该函数用来判断当前进程是否能够迁移到目标cpu上,代码如下:staticint can_migrate_task(struct tas…

分治法求最大最小

分治法的基本思想&#xff1a;是将一个规模为n的原问题分解为k个规模较小的子问题&#xff0c;这些子问题互相独立且与原问题相同。递归地解这些子问题&#xff0c;然后将子问题的解合并为原问题的解。 1 #include<stdio.h>2 /* 分治法计算最大值和最小值的算法程序&…

linux安装程序乱码,linux远程桌面乱码解决及引起的相关问题、字库安装

一、解决linux中文乱码问题通过xmanager远程访问linux(我这里使用redhat as5)&#xff0c;原先本机可以看到的中文出现乱码(ssh终端访问时也是乱码)。如何解决这一问题&#xff1f;其实&#xff0c;很简单只要设置系统字符集就行。具体如下&#xff1a;1、修改/etc/sysconfig/i…

第12课第2.2节 字符设备驱动程序之LED驱动程序_测试改进

第12课第2.2节 字符设备驱动程序之LED驱动程序_测试改进 //仅用flash上的根文件系统启动后&#xff0c;手工MOUNT NFSmount -t nfs -o nolock,vers2 192.168.31.202:/work/nfs_root /mnt //在虚拟机中操作/work/nfs_root/tmp$ sudo chown book:book fs_mini_mdev -R //修改为可…

linux查看目录下文件个球,球服务翻译……只找到以前版本的。新版的服务名称改了……...

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼还是优化的问题……看得懂地我就关了。比如蓝牙什么的……5985ms fedora-storage-init.service4451ms colord-sane.service3578ms udev-settle.service1545ms NetworkManager.service1492ms boot.mount1443ms systemd-vconsole-set…

大数据笔记(十三)——常见的NoSQL数据库之HBase数据库(A)

一.HBase的表结构和体系结构 1.HBase的表结构 把所有的数据存到一张表中。通过牺牲表空间&#xff0c;换取良好的性能。 HBase的列以列族的形式存在。每一个列族包括若干列 2.HBase的体系结构 主从结构&#xff1a; 主节点&#xff1a;HBase 从节点&#xff1a;RegionServer 包…

linux内核网络钩子函数使用,Linux内核IOCTL网络控制框架实现实例分析

4.6、inet_ioctl函数由于inet_ioctl函数内容分支很多,但功能、处理不难理解,所以我把一些不常见的内容都省去,挑简单重要的说,完全在于抛砖引玉:static int inet_ioctl(struct socket *sock, unsigned int cmd, unsigned long arg){…switch(cmd){case FIOSETOWN://设置属主cas…

(转)递归转非递归的思路和例子

转自&#xff1a;http://blog.51cto.com/cnn237111/1241956 某些算法逻辑&#xff0c;用递归很好表述&#xff0c;程序也很好写。理论上所有的递归都是可以转换成非递归的。如果有些场合要求不得使用递归&#xff0c;那就只好改成非递归了。 通常改成非递归算法的思路&#xff…

Linux自动亮度,ubuntu亮度无法自动调节终极解决方案

关于ubuntu亮度无法自动调节的问题&#xff0c;纠结了我快两年&#xff0c;主要是自己懒&#xff0c;写了个脚本来调节亮度&#xff0c;不过还是稍显不便。近日兴起折腾了一番&#xff0c;终于找到问题根结了。There are many ways to control brightness. According to this d…

NHibernate:no persister for 异常

几种原因&#xff1a; 1、配置文件后缀名写错 mapping file 必须是.hbm.xml结尾 2、Web.config配置里面引用实体 <session-factory> ........................ <mapping assembly"Project.DomainModel"/> <!-- Here --> </session-factory>…

拦截器的的调用顺序

拦截器的的调用顺序 a&#xff1a;首先&#xff0c;要找到它自己有没有声明拦截器的引用&#xff0c;即<action>元素有没有<interceptor-ref>子元素&#xff0c;如果有&#xff0c;则不用继续寻找&#xff08;即不会再使用b,c即默认的拦截器栈等&#xff09;&#…