看板 PHP 關於我們 聯絡資訊
※ 引述《JYHuang (夏天到了,冷不起來了說)》之銘言: : 有時看到一些版友在問問題順便po上程式碼時,覺得其實可以運用一些 : 小方法來精簡,例如下拉式選單 (寫程式不就是要偷懶嘛 XD ) : 小弟的方法是先寫好一個函式。 : function make_select($array,$default_key=null,$attributes=null) : { : $htm = "<select $attribuges >"; : foreach($array as $key=>$text){ : if ($key == $default_key) : $htm .= "<option value='$key' selected'>$text"; : else : $htm .= "<option value='$key'>$text"; : } : $htm .= "</select"; : return $htm; : } : $array: 二維陣列,第二維存option的value值和文字 : $default_key: 選取的預設值 : $attributes : 就name=.. class=.. 那些阿殺不魯的東西 XD : 這樣一來,當你要建立一個下拉式選單時, : 直接把陣列丟進去函數裡 ( 搭配SQL時更是下菜啊 :D~ ) : 就不用key那麼一大串的html和下一堆判斷式來判斷是否有select了 : PS: radio,checkbox 也可以照這種方法來料理喔~~ : (快中午了,還寫什麼程式...快去吃飯 XDD ) 照個人喜好修改一下 function make_select($array,$default_key=null,$attributes=null){ $htm = "<select $attribuges >"; $str = '<option value="%s"%s>%s</option>'; foreach($array as $key=>$text){ $sel = ''; if ($key == $default_key){ $sel = ' selected="selected"'; }else{ $sel = ''; } $htm .= sprintf($str, $key, $sel, $text ); } $htm .= '</select>'; return $htm; } 後來比較喜歡用這種方式,我個人認為比較容易讀,因為以前"$xxx".'xxx'這種寫法 我看起來實在是很不舒服。 還有就是盡量照網頁標準寫法來 到現在都還沒有吃午餐,為什麼我還在寫程式= = -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.130.195.65 ※ 編輯: lgzenith 來自: 220.130.195.65 (06/23 15:26) ※ 編輯: lgzenith 來自: 220.130.195.65 (06/23 17:15)
liaosankai :$attribuges錯了= =,是$attributes 06/24 17:57
liaosankai :</select>和</option>後面都補個"\n"斷行吧 06/24 18:00
liaosankai :$select = "<select$attributes>"."\n";中間不要空 06/24 18:01
liaosankai :上一行是為了不要有<select >多一個空格,但方法錯了 06/24 18:12
liaosankai :補一行if($attributes==null){$attributes=' ';} 06/24 18:13