Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 与nodejs中的其他程序交互_Php_Node.js_Console_Stdout_Readline - Fatal编程技术网

Php 与nodejs中的其他程序交互

Php 与nodejs中的其他程序交互,php,node.js,console,stdout,readline,Php,Node.js,Console,Stdout,Readline,我有一个简单的控制台程序(用php编写),它输出一些信息,然后等待用户输入,输入后,再次输出另一些信息 我需要编写nodejs程序,该程序将: 捕获此程序的第一个输出 以某种方式保存此交互,以便稍后向其发送命令 处理并向用户显示新文本并等待输入(节点内部) 获取用户输入并将其传递给打开的程序 在节点中显示php程序的最后输出 结束节点 为了保持简单,让我们假设程序是: <?php $line = readline("Enter your command: "); print 'Thank

我有一个简单的控制台程序(用php编写),它输出一些信息,然后等待用户输入,输入后,再次输出另一些信息

我需要编写nodejs程序,该程序将:

  • 捕获此程序的第一个输出
  • 以某种方式保存此交互,以便稍后向其发送命令
  • 处理并向用户显示新文本并等待输入(节点内部)
  • 获取用户输入并将其传递给打开的程序
  • 在节点中显示php程序的最后输出
  • 结束节点
  • 为了保持简单,让我们假设程序是:

    <?php
    $line = readline("Enter your command: ");
    print 'Thank you for submitting data.';
    ?>
    
    但这不起作用。提前谢谢

    const readline = require('readline');
    const exec = require('child_process').exec;
    const rl = readline.createInterface({
      input: process.stdin,
      output: process.stdout
    });
    
    exec('php programm.php', function(error, stdout, stderr){
      console.log(stdout);
      rl.question(stdout.toUpperCase(), (answer) => {
        exec(answer);
      })
    });