2010-06-22 106 views
0

我希望创建一个shell“菜单”使用PHP CLI运行外部程序

而不是使用bash作为我的脚本,我希望使用PHP。是否有可能使用PHP运行一个外部程序,这将与用户交互?

例如,假设我想要的PHP脚本运行/斌/庆典(只是一个例子),但随后退出bash的时候,回来到脚本的开始(即再次显示菜单)

谢谢

回答

1

是的。

参见:

具体做法是:

proc_open('/bin/bash', array(STDIN, STDOUT, STDERR), $a = array()); 
+0

而所有这些允许与用户交互而不是仅仅在“背景”中运行? – jtnire 2010-06-22 12:55:38

+0

编辑为包含示例。 – Sjoerd 2010-06-22 12:58:29

+0

谢谢你。抑制任何错误信息(即不向用户显示)的最佳方法是什么?事实上,如果错误可能发送到一个电子邮件地址将是很酷的... – jtnire 2010-06-22 13:04:14

0

PHP可以用来创建所谓的 “菜单” 程序,就像任何其他的编程语言(例如Python/Perl等)。除非它绝对必要,也许你正在调用一个专有应用程序,PHP有自己的功能和模块来与操作系统进行交互。例如,如果您想移动/复制文件,您可以使用诸如rename(),copy()等函数。请阅读PHP手册了解更多信息。当然,如果你真的想从PHP调用外部程序,你可以在几个中使用exec()或shell_exec()。检查手册。

+0

感谢您关于PHP内置函数的提示,但是我希望运行“xm console x”来访问Xen DomU的控制台。如果只有PHP有这个内置;)! – jtnire 2010-06-22 13:02:44