看板 PHP 關於我們 聯絡資訊
※ 引述《qrtt1 (隱者)》之銘言: : ※ 引述《piligo (pili)》之銘言: : : 請問當我用switch來做判斷規則時,在case的字串可否用RE這種語法來做判斷呢? : : 譬如底下當$a1的變數=2005/03/06可以符合外,有辦法不用再寫第二個case就能讓 : : 2005/03/06/01或2005/03/06/02也去跑2005/03/06這個case,這有辦法達成嗎?還是 : : 一定要用三個case寫呢? : : switch ($a1) { : : case "2005/03/06" : : echo "Hi"; : : break; : : } : : 謝謝 : 請問2005/03/06/01後面多一個01是指什麼 : 還有這是user input還是你自己在程式中組裝的資料。 : 要做日期判斷還是日期函式最為直覺 : 雖然你知道re是一種方法 : 但是也許您可以描述你目的的前因後果 : 說不定有人願意分享更的解法 也許換一個方向想也不錯壓. 用關聯陣列可以嗎? 條件不合就是給你空的東西 $user_input="2005/03/06"; $state = array(); $state['2005']['03']['06']=array('01','02','03','04','05'); // test $arr=split("/", $user_input,4); print_r($arr); // level 1 echo "\nlevel 1"; print_r($state[$arr[0]]); // level 1,2 echo "\nlevel 1,2"; print_r($state[$arr[0]][$arr[1]]); echo "\n"; -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 163.26.34.105