簡體   English   中英

php動態函數列表

[英]php dynamic function for list

我試圖使動態功能,用戶可以在不添加<ul> <li>標記的情況下創建列表。

這是我的功能

function the_main_nav($navlinks){
        echo '<nav>';
        echo '<ul>';

        $menuitem = $navlinks;
        $pieces = explode(",",$menuitem);

        $i=$navlinks;
        while($i==','){ 
            echo '<li>' . $pieces[$i] . '</li>';
            $i++;
        }

        echo '</ul>';
        echo '</nav>';      
    }

這是我的模板標簽the_main_nav('1,2,3,44 5');

但是它陷入了無休止的循環,並伴有錯誤。 我想在每個','逗號后自動生成<li> 另外,如果可能的話,我想在列表中添加錨鏈接,以便可以與頁面鏈接。

代替while循環,使用foreach

foreach ( $pieces as $piece ) {
  echo '<li>' . $piece . '</li>';
}

是的,使用foreach可能很酷,但是您的錯誤出在邏輯視圖中。 如果我看一下您的算法,則會看到:編寫一些打開的標簽,將參數存儲到一個名為$ menuitem的新變量中,每次發現“”時都從$ menuitem創建一個數組,並將其存儲在$ pieces中,將參數存儲到一個新變量中現在稱為$ i,而$ i等於char“,”(總是錯誤的)寫我的子標簽

之后寫完結束標簽。

您不設置陣列。 一個foreach循環會做到這一點。 但是要糾正您的代碼,您必須了解$ i必須將數組的索引作為值,所以0,1,2,3 ...

暫無
暫無

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

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