【发布时间】:2012-05-29 20:00:42
【问题描述】:
我已经编写了这个程序来在嵌入式 perl 脚本中传递一个变量,但是它给出了空白输出:-(为什么它不起作用。请解决这个问题。
php 脚本
<?php
$var1='high';
exec('C:/xampp/htdocs/WORK/hello.pl'.' '.EscapeShellArg("$var1"),$output);
echo ($output);
?>
perl 脚本
#!/usr/bin/perl -w
$var1=<>;
print $var1;
【问题讨论】:
-
您确定您的 *.pl 文件是可执行的吗?尝试从命令行执行 hello.pl,不使用 php
-
是的,我做到了....它的执行没有任何错误
-
好的,在本地重新创建。
shift有效,<>无效。我不知道为什么会这样,但是.. 你必须使用shift或$ARGV[0]来获得价值 -
stackoverflow.com/questions/3745623/… - 所以..
仅用于管道,对于必须使用 ARGV 的参数 -
谢谢@VitalyDyatlov 我得到了输出:-)