数组内的PHP函数

我尝试将函数存储在数组中,但它一直给我这个错误

unexpected ‘function’ (T_FUNCTION)

我在互联网上四处张望,但他们大多说我应该使用5.3和更高版本的PHP,而我正在使用5.6.21.

这是我的数组:

       static $Events = array(
            'View Page' => array(
                'properties' => array(
                    'prevIoUs_event',
                    'number_view_page',
                ),
                'trigger' => function($foo){
                    return $foo;
                },
            ),
        );

如果有人知道问题是什么以及如何解决,请帮助我:)

解决方法:

静态值需要使用静态/常量表达式进行初始化.令人遗憾的是,匿名函数还不够“稳定”,无法计数.更高的PHP版本允许一些有限的表达式,例如2 4(因为结果始终是常数),但仅此而已.函数声明太复杂而无法在静态上下文中处理(您可以在之后随时将函数添加到数组中,只是无法以这种方式进行初始化*).

*此限制的原因是,静态声明是在与运行时代码不同的解析阶段处理的,并且解析阶段只能处理原始值.

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...