php从命令行执行时可以使用 -r参数来传递执行的php代码,如果我们从程序中传php脚本来执行就会涉及到引号替换的问题,下面记录一个从输入流传递执行的php代码的方法
$descriptorspec = [
0 => ["pipe", "r"], // 启动的命令行可以从这里读取内容
1 => ["pipe", "w"], // 启动的命令行会把内容输出到这里
2 => ['pipe', 'w'] //启动的命令行会把错误信息输出到这里
];
//启动命令行处理程序
$process = proc_open('php -a ', $descriptorspec, $pipes);
// 把内容客情入标准输入管道使用命令行中可以读取
$inputScript='echo 1;';
fwrite($pipes[0], $inputScript);
fclose($pipes[0]);
// 从输出管道中读取命令行输出的内容
$content = stream_get_contents($pipes[1]);
fclose($pipes[1]);
$output_error = stream_get_contents($pipes[2]);
fclose($pipes[2]);
//关闭
$return_value = proc_close($process);
//替换掉开头的输出和空行
// $content=preg_replace('@Interactive shell\s*\n\s*\n@','',$content);
print_r($content);
未经允许不得转载:任鹏个人博客 » php调用php解析器,从变量传递php脚本代码来执行
最新评论
Forex wiki. https://lt.forex-stock-bitcoin-brokers.com
Magnificent items from you, man. I have take note your stuff
Following on from the 3rd March Meetings held by economic de
It is remarkable, rather valuable message dfgdlfg2131.32
一般都会有一个沙盒期的,过了沙盒期就会慢慢放出来
百度不收录是应为是新站的原因吗?
The spike in consumer prices that left inflation at a four-d