我是php的新手 我有一个奇怪的场景,我无法在函数中声明以下内容:
const CONST_Example = 1/192;
我也尝试过:
const CONST_Example = 1;
也不要工作。 我希望能够保存常量浮点数,这是算术表达式的结果,如1/190等。
答案 0 :(得分:1)
确实不可能在PHP中将该值创建为类常量。你不能这样声明:
class Foo {
const CONST_Example = 1/192;
}
因为PHP在解析类声明时无法评估表达式 在运行时事后,您也不能将常量添加到类中。
您的选择是:
将其声明为常规运行时定义的常量:
define('CONST_Example', 1/192);
使用下一个最佳浮点表示作为文字:
class Foo {
const CONST_Example = 0.005208333333333333;
}
答案 1 :(得分:0)
第一个没有工作,但第二个应该。以下是如何让您的班级使用常量
的示例<?php
class Foo {
const CONST_EXAMPLE = 1;
}
第一个因为以下原因而无法工作:
&#34;值必须是常量表达式,而不是(例如)变量,属性,数学运算的结果或函数调用。&#34; < / p>