簡體   English   中英

PHP多維數組-顯示最后一個數組的foreach循環

[英]PHP multidimensional array - foreach loop showing last array

我有一個多維數組,如下所示:

$worksheet = array(
  'sheet 1' => array(
    '#1 sheet 1',
    ' #2 sheet 1',
    '#3 sheet 1'
  ),

  'sheet 2' => array(
    '#1 sheet 2',
    '#2 sheet 2'
  ),

  'sheet 3' => array(
    '#1 sheet 3',
    '#2 sheet 3'
  )
);

然后我運行PHP代碼,如下所示:

foreach($worksheet as $ws=>$value)
  echo $ws.'<br/>';
{
  foreach($value as $sheet=>$ivalue)
  {
    echo $ivalue.'<br/>';
  }
}

上面的代碼將只生成最后一個數組,如下所示:

sheet 1,  sheet 2,  sheet 3,  #1 sheet 3,  #2 sheet 3

我發生了什么事:

#1 sheet 1, #2 sheet 1, #3 sheet 1, #1 sheet 2, #2 sheet 2.

修正您的語法。 echo不在您想要的{}內。 否則,PHP將假定您只是打算執行回顯,而不會意識到您希望執行內部循環。

修理:

foreach($worksheet as $ws=>$value)
{
     echo $ws.'<br/>';

因為你犯了一個錯誤。 代碼的第二行和第三行是相反的。 代碼應該是這樣的:

foreach($worksheet as $ws=>$value)
{
         echo $ws.'<br/>';

因此,您的代碼通過回聲與外部foreach循環,然后在方括號{包圍的“部分”中,進行另一個循環(內部foreach )。

echo $ws.'<br/>'

應該在括號內

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM