我在使用popen的linux服务器上从php调用java时遇到了问题。
$java = '/usr/bin/java';
$cmd = "$java -jar javafiles/register.jar < $tmpFile";
&lt;&lt; $ tmpFile之前是什么意思?因为显然它是从磁盘加载$ tmpFile的内容并直接在register.jar执行的控制台上输入它。是这样的吗?因为$ tmpFile的内容具有特殊字符,并且这些字符没有在正确的字符集中进行编码。
答案 0 :(得分:3)
这正是它的作用。具体来说,它运行程序并将$tmpFile
的内容发送到正在执行的程序的标准输入(System.in)。