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吗?
答案 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)
看看这个页面。您看到的警告表明该常量未正确声明。