我有以下bidimentional数组:available_years_with_months:
Array
(
[2017] => Array
(
[0] => January
)
[2016] => Array
(
[0] => December
[59] => November
[148] => October
[149] => September
[167] => August
[534] => April
)
[2014] => Array
(
[0] => August
)
[2012] => Array
(
[0] => August
)
)
我希望以这种方式在html中回显它:2017年1月,2016年12月,2016年11月等...如图所示:
我在HTML中编写了这个select语句以提取月份和年份:
<select>
<option value="all" selected>All dates</option>
<?php foreach ($available_years_with_months as $month): ?>
<option value="<?php echo $month; ?>"><?php echo $month; ?></option>
<?php endforeach; ?>
</select>
但我收到了一个错误:
b900386fd351eb78414201e8cfaa8c3c69c71170.php中的ErrorException第16行:数组转换为字符串
第16行是这一行:
<option value="<?php echo $month; ?>"><?php echo $month; ?></option>
我做错了什么?
答案 0 :(得分:1)
看起来你需要在这里使用嵌套循环。
循环1多年。循环2几个月。
<?php foreach ($available_years_with_months as $year => $months): ?>
<?php foreach ($months as $month): ?>
<option value="<?php echo $month; ?> <?php echo $year; ?>">
<?php echo $month; ?> <?php echo $year; ?>
</option>
<?php endforeach; ?>
<?php endforeach; ?>