当前位置: 首页 > 面试题库 >

确定PHP脚本的命令行执行与HTTP执行的规范方法是什么?

濮阳赞
2023-03-14
问题内容

我有一个PHP脚本,需要确定它是通过命令行还是通过HTTP执行的,主要是出于输出格式化的目的。这样做的规范方法是什么?我以为是要检查的SERVER['argc'],但事实证明,即使使用“
Apache 2.0 Handler”服务器API时,它也已被填充。


问题答案:

使用php_sapi_name()功能。

if (php_sapi_name() == "cli") {
    // In cli-mode
} else {
    // Not in cli-mode
}

以下是文档中的一些相关说明:

php_sapi_name —返回Web服务器和PHP之间的接口类型

尽管不完整,但可能的返回值包括aolserver,apache,html" target="_blank">apache2filter,apache2handler,caudium,cgi(直到PHP
5.3),cgi-fcgi,cli,cli-
server,continuity,embed,isapi,litespeed,milter,nsapi,phttpd,
pi3web,roxen,thttpd,tux和webjames。

在PHP> = 4.2.0中,还有一个预定义的常量,PHP_SAPI其值与相同php_sapi_name()



 类似资料:
  • 本文向大家介绍PHP 将脚本执行限制为命令行,包括了PHP 将脚本执行限制为命令行的使用技巧和注意事项,需要的朋友参考一下 示例 函数php_sapi_name()和常数PHP_SAPI都返回接口的类型(小号erver API)正在使用由PHP。通过检查函数的输出是否等于,可以将它们用于限制脚本在命令行中的执行cli。 该drupal_is_cli()函数是一个函数示例,该函数检测是否已从命令行执

  • 本文向大家介绍PHP中执行cmd命令的方法,包括了PHP中执行cmd命令的方法的使用技巧和注意事项,需要的朋友参考一下 本文介绍下,在php代码中执行cmd命令的方法,介绍下在php.ini文件中配置safe_mode参数支持命令执行的方法,有需要的朋友参考下。 说明: 本节内容在wamp包安装的环境实现。 首先,打开php.ini,关掉安全模式safe_mode = off,然后在看看 禁用函数

  • 问题内容: 我想知道一个PHP for循环执行需要多少毫秒。 我知道通用算法的结构,但是不知道如何在PHP中实现它: 问题答案: 您可以使用此功能 —返回当前的Unix时间戳(以微秒为单位) 如果将设置为,则返回一个浮点数,它表示自Unix纪元以来精确到最接近的微秒的当前时间(以秒为单位)。 用法示例:

  • 其中test.py为: 我为python、geckdodriver和firefox授予了整个lib目录的权限,以便在IIS_IUSRS(使用Windows)下进行完全控制。 Geckodriver的日志: 产生错误: 文件“C:\inetpub\wwwroot\jobdescription\test.py”,第13行,在driver=webdriver.firefox(firefox_option

  • 问题内容: 我前一段时间读过这篇文章,但似乎找不到。我试图找到一个将在终端中执行命令然后输出结果的命令。 例如:脚本将是: 它将在终端中运行该命令的结果 问题答案: 做这件事有很多种方法: 一种简单的方法是使用os模块: 子流程模块可以实现更复杂的事情:例如:

  • 本文向大家介绍java执行Linux命令的方法,包括了java执行Linux命令的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了java执行Linux命令的方法。分享给大家供大家参考。具体实现方法如下: 其中参数 cmd 为Linux命令。每次只能执行一条命令。 1.Java Runtime.exec()注意事项: ① 永远要在调用waitFor()方法之前读取数据流 ② 永远要先从