如何给命令行运行浏览器,而浏览器又运行php脚本

时间:2011-11-17 15:05:41

标签: php internet-explorer

问题是如何给命令行(在.cmd脚本中)执行浏览器然后又有浏览器执行.php脚本。

目前,如果从命令窗口执行,我执行...

“c:\ Program Files \ Internet Explorer \ iexplore.exe”文件:\ c:\ users \ win7ultsdtest \ findroot.php ....要么.... C:\ Program Files \ Internet Explorer \ iexplore c:\ users \ win7ultsdtest \ findroot.php

这将运行资源管理器浏览器,但浏览器将浏览器下载findroot.php的内容,而不是根据需要执行php代码。有谁知道如何让浏览器执行php代码而不只是将其作为数据下载?

让我解释一下我的需要...... findroot.php文件包含访问$ _SERVER ['DOCUMENT_ROOT']变量的php代码。当localhost运行http服务器时,此变量仅为非null,然后它包含localhost文档服务器根路径,其中可以存储从http:\ lines加载的可加载浏览器.html,.php等。

findroot.php将$ _SERVER ['DOCUMENT_ROOT']内容作为rootpath.txt输出到文件中,这样我的.cmd脚本就可以自动将PHP代码安装到活动的PHP服务器文档根区域。

理解我必须从.cmd脚本中找到$ _SERVER ['DOCUMENT_ROOT']。 现在我可能会搜索所有计算机驱动器中的httpd.conf,然后扫描该文件以获取该值,但这有两个原因无效; 1.可能有多个httpd.conf文件,我不知道哪个服务器是活动的,并使用什么httpd.conf。 2.在所有httpd.conf文件中搜索给定计算机的整个驱动器需要很长时间。

2 个答案:

答案 0 :(得分:1)

浏览器不会执行PHP代码。您需要服务器来运行PHP并通过HTTP(例如C:\Program Files\Internet Explorer\iexplore http://localhost/url/for/findroot.php)访问它,或者您可以通过命令行c:\path\to\php.exe c:\users\win7ultsdtest\findroot.php运行PHP。但是,通过命令行运行它不会给你$ _SERVER ['DOCUMENT_ROOT'],因为只有在服务器中运行PHP时才会填充它。

如果没有服务器事先了解PHP,就不可能通过HTTP服务器执行PHP - 例如,在文档根目录中。当然,如果您不知道文档根目录,那么您的脚本将不在那里。如果您尝试将脚本安装到用户的Web服务器中,最好提供有关如何执行此操作的说明,因为他们的服务器环境可能与您期望的不同。

答案 1 :(得分:-1)

如果您使用的是Linux机器,那么像lynx这样的轻量级浏览器

lynx http://whateverurl/php.php