包含数组的 PHP 常量?

新手上路,请多包涵

这失败了:

  define('DEFAULT_ROLES', array('guy', 'development team'));

显然,常量不能保存数组。解决这个问题的最佳方法是什么?

 define('DEFAULT_ROLES', 'guy|development team');

//...

$default = explode('|', DEFAULT_ROLES);

这似乎是不必要的努力。

原文由 Nick Heiner 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 328
2 个回答

PHP 5.6+ 引入了 const 数组 - 请参阅 Andrea Faulds 的回答

您还可以序列化您的数组,然后将其放入常量中:

 # define constant, serialize array
define ("FRUITS", serialize (array ("apple", "cherry", "banana")));

# use it
$my_fruits = unserialize (FRUITS);

原文由 user156676 发布,翻译遵循 CC BY-SA 4.0 许可协议

如果您使用的是 PHP 7 和 7+,您也可以像这样使用 fetch

 define('TEAM', ['guy', 'development team']);
echo TEAM[0];
// output from system will be "guy"

原文由 Mohit Rathod 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题