3

试图学习 PHP 和一个更有经验的开发人员对我的 PHP 脚本进行了一些修改,但我没有得到一个 opp 来询问“#!”是什么意思。在我的 PHP 脚本中的路径旁边?它位于我正在处理的 PHP 文件的最顶部:

#!/opt/local/bin/php

任何帮助/方向将不胜感激。

问候。

4

3 回答 3

4

这是一种告诉 Linux 使用/opt/local/bin/php. 如果您将 PHP 作为 apache 的插件运行,您将使用<?php ?>标签来识别 PHP 代码。

于 2012-09-20T11:33:48.987 回答
3

维基百科解释得很简单:Shebang (unix)

在类 Unix 操作系统下,当带有 shebang 的脚本作为程序运行时,程序加载器将脚本初始行的其余部分解析为解释器指令;而是运行指定的解释器程序,将尝试运行脚本时最初使用的路径作为参数传递给它。 [11] 例如,如果脚本以路径“path/to/script”命名,并且它以以下行开头:

#!/bin/sh

然后程序加载器被指示运行程序“/bin/sh”(通常这是 Bourne shell 或兼容的 shell),将“path/to/script”作为第一个参数传递。shebang 行通常被解释器忽略,因为“#”字符是许多脚本语言中的注释标记;一些不使用井号开始注释的语言解释器(例如 Scheme)仍然可能会忽略 shebang 行以识别其用途。 [12]

于 2012-09-20T11:34:39.053 回答
2

它被称为 Shebang 参见Wikipedia

在类 Unix 操作系统下,当带有 shebang 的脚本作为程序运行时,程序加载器将脚本初始行的其余部分解析为解释器指令;而是运行指定的解释器程序,将尝试运行脚本时最初使用的路径作为参数传递给它。 [11]

于 2012-09-20T11:33:57.060 回答