2014-02-12 31 views
-1

我試圖把數組的值作爲列表顯示出來。我以前使用過一個foreach來做這件事,但由於某種原因,我無法弄清楚爲什麼這次不工作。在下面的代碼中,$ output是通過AJAX生成的整個頁面的內容,稍後在腳本的底部回顯出來。一切似乎都在工作,除了這一小部分。我設法得到這完全相同的信息顯示在一個單獨的靜態頁面(沒有$輸出),所以我不知道爲什麼它不在這裏工作。輸出數組的值

 if(!empty($record['utilities'])) { 
      $output .= "<ul>"; 
       foreach ($record['utilities'] as $eachUtility): 
      // $output .= "<li>" echo $eachUtility; "</li>"; 
       $output .= "<li>" . $eachUtility . "</li>"; 
       endforeach; 
      $output .= "</ul>"; 

     // $output .= $record['utilities']; This works 
     } 

下面是被硬單獨的頁面上的編碼相同的代碼的工作示例:

 <?php if(!empty($record['utilities'])) { ?> 
     <ul> 
     <?php foreach ($record['utilities'] as $eachUtility): ?> 
     <?php echo ('<li>' . $eachUtility . '</li>'); ?> 
     <?php endforeach ?> 
     </ul> 
     <?php } ?> 
+1

討厭問,但你'回聲$ ouptut;'將其發送到輸出緩衝區? –

+0

你的[testcase](http://sscce.org)在哪裏? –

+0

是$輸出在最後回顯。這只是一小部分內容的一小部分。除了這個之外,當我回顯$輸出時,文檔的每個其他部分都會顯示出來。 – user2989731

回答

1

試試這個:

$output = "<ul>"; 
foreach ($record['utilities'] as $eachUtility) { 
    $output .= "<li>" . $eachUtility . "</li>"; 
} 
$output .= "</ul>";