我正在尝试对在某些日子某些时间发生的课程列表(针对健身房)进行排序。我正在使用当前类中当天的值为一周中的每一天创建一个数组(如果它尚不存在)。所以,我循环遍历这些类,并在foreach
循环中使用以下代码:
if(empty($$day)) $$day = array();
所以现在我有一个名为$ Monday的数组,例如。我为什么可以使用:
array_push($$day,$post);
但不是
$$day[] = $post;
?
我得到一个带有上述代码的白色屏幕。这很重要,因为理想情况下我会抓住课程的开始时间,并在执行ksort()
之前使用以下代码:
$$day[$time] = $post;
这只是我在PHP中无法做到的事情吗?
答案 0 :(得分:5)
试试这个:
${$day}[] = $post;
语法上不允许写$$var[] = ...;
,它会给你:
致命错误:无法使用[]进行阅读
当你做一些深度PHP魔术时,PHP中有时需要那些花括号。在引用双引号字符串中的更复杂结构时也是如此"Here come some {$complex['value']}";
查看manual了解详情。