bootstrap.php中设置:
Configure::write('top_menu_show_count', array( 'PC' => 8, 'SP' => 3, ) );
调用
如下写法在win7系统下会报语法错误,MAC不会有这个问题:
$pc_count = Configure::read('top_menu_show_count')['PC'];
换成以下写法,没问题: $tmpParams = Configure::read('top_menu_show_count');
$pc_count = $tmpParams['PC']
想知道上面报错的的原因?
这个好像是php版本问题,好像是比较新的版本才支持这样访问数组的~
找了很久终于找到了,是PHP 5.4.0新增的特性:
@斯诺登: 还没解释为什么在两个系统不同,两个系统装的版本不同???
@斯诺登: 已确认。本地已经测试通过。
参考url:
http://www.php.net/manual/zh/migration54.new-features.php
错误的以为是系统的区别,没有认识到问题的本质。
非常感谢。
@angelshelter: 嗯,不关系统的事,他应该是Mac系统装了PHP5.4+的版本,Win装了PHP5.4-的版本导致的。
开发中建议统一服务器和本地环境,统一团队开发环境,代码注意向下兼容,尽量兼容到5.3+,可以避免很多不必要的问题。
操作符优先级的问题?
你的意思是win7 和 mac php里的优先级不一样?