为什么php中的这个方法常量()给我警告

时间:2011-07-24 16:46:10

标签: php

const MyConstant = "test";
$declaredcons = "MyConstant";
echo constant ($declaredcons);//Emits me warning why???
echo constant ("MyConstant");//How ever not working 
echo MyConstant;//Outputs test .I dont want to use this...

Iam试图知道为什么当我使用const(constantname)时它会给我警告。任何人都可以尝试它。我在Windows 7上使用5.3.6。它是bug吗?

2 个答案:

答案 0 :(得分:1)

您应该只在CLASS中使用const。在课外,最好使用define() 尝试这样的事情:

define("MyConstant", "test");

$declaredcons = "MyConstant";

echo constant ($declaredcons); // result : test
echo constant ("MyConstant");  // result : test
echo MyConstant;               // result : test

在一个类中你可以使用const:

class MyClass
{
    const constant = 'constant value';

    function showConstant() {
        echo  self::constant . "\n";
    }
}

$class = new MyClass();
$class->showConstant();

答案 1 :(得分:0)

http://us3.php.net/constant

看看这个页面。您看到的警告表明该常量未正确声明。