2017-01-02 1 views
0

I가 호출 된 다음 bidimentional 배열 : available_years_with_months :PHP : 오류 발생 bidimentional 배열을 울리는 -> 문자열 변환에 배열

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 내부에 그것을 에코하려면 : 1 월 2017 년 12 월 2016 년 11 월 2016, 등등 ... 그림과 같이 :

: 나는 월과 연도를 끌어 HTML이 SELECT 문을 작성

enter image description here

<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> 

하지만 오류가있어 : 내가 잘못 뭐하는 거지

<option value="<?php echo $month; ?>"><?php echo $month; ?></option> 

:

ErrorException in b900386fd351eb78414201e8cfaa8c3c69c71170.php line 16: Array to string conversion

라인 (16)이 하나입니다?

+1

'$의 mont' 개월의 배열, 당신은 내가 라인 16 –

+0

@bub이 필요하다. 완벽하게 작동합니다. –

답변

1

여기에 중첩 루프를 사용해야합니다.

수년간 루프 1. 몇 달 동안 반복하십시오.

<?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; ?> 
+0

감사와 답을 편집 한 번 더 foreach는 –