php - array_push 添加我的数组后添加另一个空数组
问题描述
我正在研究一种填充空数组的方法。
我有这个代码:
$array = array();
$month = 'enero';
array_push($array, $array[$month] = array('01'));
array_push($array['enero'], '02');
print_r($array);
这将返回:
Array
(
[enero] => Array
(
[0] => 01
[1] => 02
)
[0] => Array
(
[0] => 01
)
)
数组[0]
不知从何而来,我不知道该怎么做。我努力了
array_push($array['enero'], '02');
但它不起作用。我怎样才能得到预期的结果:
Array
(
[enero] => Array
(
[0] => 01
[1] => 02
)
)
解决方案
如有疑问,请避免array_push
并仅使用[]
符号。它具有自动创建不存在的子数组的优点(因此无需使用$array[$month] = array();
):
$array = array();
$month = 'enero';
$array[$month][] = '01';
$array[$month][] = '02';
print_r($array);
如果要使用array_push
,则需要先创建enero
元素,然后再尝试将其推入:
$array = array();
$month = 'enero';
$array[$month] = array();
array_push($array[$month], '01');
array_push($array[$month], '02');
print_r($array);
输出(两段代码):
Array
(
[enero] => Array
(
[0] => 01
[1] => 02
)
)
推荐阅读
- javascript - 无法使用 Safari 上的存储访问 API 在 iframe 中设置 cookie
- python - 将散景面板保存到独立的 HTML
- linux - `nanosleep()` Linux 上的异步信号安全
- c++ - 异常:字符串下标超出范围
- css - 无法使用 Angular 标签格式化引导 css
- php - 使用 Query Builder 的 codeigniter 4 中的分页问题
- html - 使用自定义清洁文本换行
- 带有伪类的子弹
- sql - SQL查询分组数据不在
- linux - 为什么在交叉编译时找不到包含的 C 头文件,但在没有 cc 时却很好?
- c# - 根据单击的按钮隐藏或显示 C# 中的某些 ListBox 项