【问题标题】:how to give command line to run browser which in turn runs php script如何给命令行运行浏览器,而浏览器又运行 php 脚本
【发布时间】:2011-11-17 15:05:41
【问题描述】:

问题是如何让命令行(在 .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

这将运行 Explorer 浏览器,但随后浏览器将下载 findroot.php 的内容,而不是按我的需要执行 php 代码。有谁知道我怎样才能让浏览器改为执行 php 代码而不只是将其作为数据下载?

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

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

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

【问题讨论】:

  • 您需要一个网络服务器来执行您的 php 页面 - 您的浏览器不知道如何处理 php,因为它是服务器端脚本。

标签: php internet-explorer


【解决方案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 服务器中,最好提供有关如何执行此操作的说明,因为他们的服务器环境可能与您的预期不同。

【讨论】:

  • 谢谢,很遗憾,我们无法完全自动化示例,因为我们无法从 .cmd 脚本中确定 DOCUMENT ROOT 所在的位置。我们有 PHP5 TestCoverage 和 Timing Profiling Utilities,它们的功能非常好,我们现在正试图通过添加一个很好的示例使它们尽可能地对用户友好。我们想提供一个示例 .cmd 脚本,它采用一些 PHP 源、仪器副本和仪器源,运行 PHP 并显示 GUI 和 XML 报告。此外,我们的仪器工作方式必须在 Document Root 下有一个文件夹来运行它的 PHP 代码。
【解决方案2】:

如果你在 linux 机器上,有轻量级的浏览器,比如 lynx

猞猁http://whateverurl/php.php

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-05-25
    • 2023-03-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-17
    • 2016-05-25
    相关资源
    最近更新 更多