kyl*_*lex 7 php loops dayofweek
我有以下for循环.它分别使用0-6形式的星期日 - 星期日.
是否有更简洁的方法来做到这一点?而不是列出来的if ($i=="day")
// $i = 0 is monday... $i = 6 is Sunday
for($i=0;$i<7;$i++){
if ($i==0)
echo ' <input name="repeat_on_week[]" type="checkbox" value="0" /> Monday';
if ($i==1)
echo ' <input name="repeat_on_week[]" type="checkbox" value="1" /> Tuesday';
if ($i==2)
echo ' <input name="repeat_on_week[]" type="checkbox" value="2" /> Wednesday';
if ($i==3)
echo ' <input name="repeat_on_week[]" type="checkbox" value="3" /> Thursday';
if ($i==4)
echo ' <input name="repeat_on_week[]" type="checkbox" value="4" /> Friday';
if ($i==5)
echo ' <input name="repeat_on_week[]" type="checkbox" value="5" /> Saturday';
if ($i==6)
echo ' <input name="repeat_on_week[]" type="checkbox" value="6" /> Sunday';
}
Run Code Online (Sandbox Code Playgroud)
Viv*_*ath 16
怎么样:
$days = array('Monday',
'Tuesday',
'Wednesday',
'Thursday',
'Friday',
'Saturday',
'Sunday'
);
for($i = 0; $i < 7; $i++) {
echo '<input name = "repeat_on_week[]" type = "checkbox" value = "' . $i . '" />' . $days[$i];
}
Run Code Online (Sandbox Code Playgroud)
或者使用foreach; 它更容易在眼睛上,你不必弄清楚数组的长度:
for($days as $i => $day) {
echo "<input name = \"repeat_on_week[]\" type = \"checkbox\" value = \"$i\" /> $day";
}
Run Code Online (Sandbox Code Playgroud)
这是一个好兆头,你认为"必须有一个更好的方法来做到这一点!" .这意味着你正朝着正确的方向前进*.但我还建议了解数组的概念以及何时使用它们.
*一个优秀的程序员总是认为他或她的代码很糟糕,这是另一种说法,一个优秀的程序员总是试图改善自己,这也是一个说好的程序员谦虚的另一种方式.