我正在製作一個網站,它基於什麼時間確定數組的值。我寫了這個糟糕的(功能性)腳本,想知道我是否可以使它更簡潔。我從一個case/switch語句開始,但很難獲得多個條件。這裏的卑鄙:我剛剛寫了一個可怕的PHP函數,我需要一些幫助(elseif鏈 - 開關?)
if ($now < november 18th) {
$array_to_use = $home;
}
elseif (november 18th < $now && $now < november 21st) {
$array_to_use = $driving;
}
elseif (november 21st < $now && $now < november 22nd) {
$array_to_use = $flying;
}
...
...
...
elseif (february 1st < $now) {
$array_to_use = $arrived;
}
else {
$array_to_use = $default;
}
時間表實際上是更復雜,並在其13個elseif
語句。有人可以確認我只是有編碼器的阻止,並有更好的方法來做到這一點?
編輯:我改變了Unix的時間戳來粗略實際時間,以便它更容易理解我在做什麼(希望)
編輯2:請原諒當前破碎的Javascript時鐘,但這是我正在處理的網站:
每個數組都基於我的位置,並且有15個「他們當前」基於它的時間。這是一個具有已知開始/結束時間的小問題域,因此靈活性並不重要,只需將其全部寫入即可。您可以看到時間是如何連續的,並且一次只需要選擇一個字符串數組。
數學到你選擇的時間戳嗎? – 2009-11-13 19:45:01
有數學,是的。 $現在被劃分並舍入幾次 – 2009-11-13 19:47:31
有多少條件?它們是重疊的,還是每個條件都是獨佔的? – 2009-11-13 19:48:00