我有一个写在文件中的unix命令,我需要PHP来读取它并执行它。需要从文件中读取它的原因是因为命令符号在将脚本直接放入其中时会弄乱脚本。到目前为止,我有这个:
<?php
$command = readfile("http://localhost/command.txt");
echo shell_exec($command);
?>
运行此操作后,我得到的是文本文件的值,并且命令未执行。有没有办法可以做到这一点?
感谢您的帮助
答案 0 :(得分:3)
readfile()
功能不符合您的想法。它将文件的内容输出到浏览器,并返回读取的字节数。
相反,您需要file_get_contents()
:
$command = file_get_contents('http://localhost/command.txt');
echo shell_exec($command);
但有一个问题:你为什么要从网站上提取命令文件?为什么不是本地文件-ystem?
答案 1 :(得分:0)
我认为你用这种方法过于复杂。尝试直接将字符串放在php脚本中,并显示出错的地方。
答案 2 :(得分:0)
你有什么特别的原因不只是使用popen吗?