我有一个数组$ stuff,它由我的初始化脚本中的mysql查询的while循环填充。我有php 5.6,但这两个都失败了:
define("STUFF", $stuff);
const STUFF = $stuff;
如果我明确地输入内容:
const STUFF = array(234243,44,222,66321);
那就行了。但是我无法做到这一点,因为我需要先计算stuff数据的内容(但对于其余的后续脚本,它是常量)。
答案 0 :(得分:0)
这不应该在php 5.X中工作(即使PHP引擎没有拒绝该语句,您也可能无法访问这些值):
const STUFF = array(234243,44,222,66321);
常量值,无论是常量值还是类常量,都需要是标量类型(即不是数组,也不是对象)。 PHP 5.6引入了声明数组常量的可能性,但是这些不能动态填充。