PHP:如何创建一个;“树”;常数
我想知道在PHP中是否可以创建常量的“树”(而不实例化类的树)。。。让我解释一下我想做什么(代码不正确): 因此,我在代码中使用以下内容:PHP:如何创建一个;“树”;常数,php,abstract-class,constants,Php,Abstract Class,Constants,我想知道在PHP中是否可以创建常量的“树”(而不实例化类的树)。。。让我解释一下我想做什么(代码不正确): 因此,我在代码中使用以下内容: dbConstants::logType::Project 在php 7中: define('animals')[ “狗”, “猫”, “鸟” ]); 这将定义一个常量数组 在PHP5.6中,可以使用const声明常量数组 这两者都可以包含更多数组以形成结构。您只能使用标量数据(整数、布尔值、浮点值和字符串),在PHP>5.6中,您还可以使用标量表达式、数
dbConstants::logType::Project
在php 7中:
define('animals')[
“狗”,
“猫”,
“鸟”
]);代码>
这将定义一个常量数组
在PHP5.6中,可以使用const
声明常量数组
这两者都可以包含更多数组以形成结构。您只能使用标量数据(整数、布尔值、浮点值和字符串),在PHP>5.6中,您还可以使用标量表达式、数组和资源作为常量的值,如前所述。使用阵列结构,您可以执行以下操作:
抽象类日志类型
{
const项目=1;
const USER=2;
}
抽象类dbConstants
{
常量日志类型=[
日志类型::项目,
日志类型::用户
];
}
echo dbConstants::logType[logType::PROJECT];
另一种方法是使用trait
和public static
成员,如果您不希望类继承和重用代码:
trait日志类型
{
公共静态$PROJECT=1;
公共静态$USER=2;
}
抽象类dbConstants
{
使用日志类型;
}
echo dbConstants::$PROJECT;
不使用阵列的另一种方法:
class logType
{
const PROJECT = 1;
const USER = 2;
}
abstract class dbConstants
{
public static $logType;
public function __construct()
{
$this->logType = new logType();
}
}
echo dbConstants::$logType::PROJECT;
class logType
{
const PROJECT = 1;
const USER = 2;
}
abstract class dbConstants
{
public static $logType;
public function __construct()
{
$this->logType = new logType();
}
}
echo dbConstants::$logType::PROJECT;