繁体   English   中英

类常量作为数组键

[英]Class constant as array key

请看下面的代码:

...
class LanguageResources {
    const SESSION_LANGUAGE_KEY = 'lang';

    public static function getLanguageSettingsFilePath() {

        if (isset($_GET[LanguageResources::SESSION_LANGUAGE_KEY])) {
....

我在最后一行获得了一条PHP错误消息。 通过常量值访问数组索引有什么问题?

Notice: Use of undefined constant SESSION_LANGUAGE_KEY - assumed 'SESSION_LANGUAGE_KEY' in ...languages.php on line 17

在定义常量的类内,必须将其引用为self::SESSION_LANGUAGE_KEY

您应该使用此:

self::SESSION_LANGUAGE_KEY

代替这个:

LanguageResources::SESSION_LANGUAGE_KEY

Prooflink: http ://www.php.net/manual/en/language.oop5.constants.php

抱歉,我的IDE无法访问htdocs文件夹,也没有将最新的源复制到目标目录(无警告)。

它与$_GET[LanguageResources::SESSION_LANGUAGE_KEY]以及$_GET[self::SESSION_LANGUAGE_KEY]

我收到了更多表示某些“警告”的“通知”警报。 为了禁用它们,您必须编辑php.ini并添加~E_NOTICE

error_reporting=E_ALL & ~E_DEPRECATED & ~E_STRICT & ~E_NOTICE

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM