📜  php konstanten - PHP (1)

📅  最后修改于: 2023-12-03 15:33:29.931000             🧑  作者: Mango

PHP之常量(Konstanten)

在PHP中,常量是不可被更改值的标识符。常量的值只能被定义一次,在脚本的其他部分无法更改。

常量的定义

常量可以使用define()和const关键字来定义。其中,define()函数的参数需要包含常量名和常量值两个参数。

define("CONSTANT_NAME", "constant_value");
const CONSTANT_NAME = "constant_value";

可见,const关键字的定义方式更简单明了。

常量的访问

常量的访问与变量一样,可以使用名称来直接访问。

//定义常量
define("CONSTANT_NAME", "constant_value");
const CONSTANT_NAME = "constant_value";

//访问常量
echo CONSTANT_NAME; //constant_value

//尝试改变常量的值
CONSTANT_NAME = "new_value"; // 提示错误
预定义常量

在PHP中,有很多预定义常量(Predefined constants),可以在脚本的各个地方直接使用。以下是一些常用的预定义常量:

  • __LINE__:返回当前行号,可以用于调试。
  • __FILE__:返回当前文件路径和名称,可以用于调试和日志记录。
  • __DIR__:返回当前文件所在的目录路径。
  • __FUNCTION__:返回当前函数名称。
  • __CLASS__:返回当前类名称。
  • __TRAIT__:返回当前Trait的名称。
  • __METHOD__:返回当前方法的名称。
  • __NAMESPACE__:返回当前命名空间的名称。

例如:

echo "当前行号: " . __LINE__ . "\n";
echo "当前文件路径: " . __FILE__ . "\n";
echo "当前目录路径: " . __DIR__ . "\n";
echo "当前函数名称: " . __FUNCTION__ . "\n";
echo "当前类名称: " . __CLASS__ . "\n";
echo "当前Trait名称: " . __TRAIT__ . "\n";
echo "当前方法名称: " . __METHOD__ . "\n";
echo "当前命名空间名称: " . __NAMESPACE__ . "\n";

以上代码会输出:

当前行号: 1
当前文件路径: /path/to/file.php
当前目录路径: /path/to/
当前函数名称: {closure}
当前类名称: {closure}
当前Trait名称: {closure}
当前方法名称: {closure}
当前命名空间名称:

预定义常量可以帮助开发者更好地调试和记录代码,在需要时可以更轻松地获取一些关键信息。

总结

常量是PHP中一种不可变的标识符,使用define()函数或const关键字可以定义。预定义常量可以在脚本的各个地方使用,帮助开发者更好地调试和记录代码。