[請益] 邏輯判斷簡化的問題

看板PHP作者 (一平)時間13年前 (2013/01/18 16:24), 編輯推噓1(105)
留言6則, 4人參與, 最新討論串1/4 (看更多)
程式如下: 我這樣寫當然是沒問題,但一看就知道不對啊。 一定有更好的方法可以達成簡潔的程式碼然後可以做到一樣的效果吧? 跪求高手指導^ ^ if (($_POST[tx_kind]==1) && ($_POST[tx_usage]!=0)) { die('如果類別是購買,則使用量應為0'); } if (($_POST[tx_kind]==1) && ($_POST[tx_borrow]!=0)) { die('如果類別是購買,則借用量應為0'); } if (($_POST[tx_kind]==1) && ($_POST[tx_doctor]!=0)) { die('如果類別是購買,則不應有操作醫師'); } if (($_POST[tx_kind]==1) && ($_POST[tx_member]!=0)) { die('如果類別是購買,則不應有操作人員'); } if (($_POST[tx_kind]==1) && ($_POST[tx_member_ppf]!=0)) { die('如果類別是購買,則不應有操作人員'); } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.166.49.11

01/18 16:28, , 1F
才五個條件,這樣已經夠了,除非你的條件有幾十個再用其他
01/18 16:28, 1F

01/18 16:28, , 2F
方法
01/18 16:28, 2F

01/18 16:30, , 3F
因為後面kind 類別有五六種以上,會造成類似程式
01/18 16:30, 3F

01/18 16:30, , 4F
出現三十次以上,才想說要怎麼弄得更好
01/18 16:30, 4F

01/18 18:36, , 5F
你有沒有發現相同的地方跟不同的地方?
01/18 18:36, 5F

01/19 09:30, , 6F
重複的地方不要寫出來,照樣列表,就知道程式怎麼設計
01/19 09:30, 6F
文章代碼(AID): #1G-GRR7c (PHP)
文章代碼(AID): #1G-GRR7c (PHP)