2014-11-06 35 views
1

我試圖讓開關/箱用一些變量來工作,他們沒有工作,我想知道爲什麼:PHP開關大小寫不能使用某些字符串?

function convert_time($time_code) { 
    switch ($time_code) { 
     case "8:00a-10:00p": 
      return 1; 
      break; 
    } 
} 

然後調用此函數的代碼是:

$testvariable = "8:00a-10:00p"; 
$testtimecode = covert_time($testvariable); 
echo "TTC: $testtimecode"; 

它總是輸出「TTC:」

我去了PhpFiddle並測試它,它也沒有在那裏工作,但我找不到像jsfiddle中的鏈接。

但是,如果我這樣做代碼:

$time_code = "8:00a-10:00a"; 
if ($time_code == "8:00a-10:00a") {echo "yes";} else {echo "no";} 

它將回聲肯定的。

所以我的問題是,我的8:00a-10:00a的格式是什麼打破了開關?它是可以修復的。

+0

如果該代碼是逐字的,你的函數調用有一個錯字,應該是'convert_time($ testvariable);'(缺少n)。 – cOle2 2014-11-06 21:35:54

+0

這裏可以正常工作。但是請注意,上面的代碼中有一個錯字:'covert'!='convert'。 – 2014-11-06 21:36:46

+0

這是該頁面上的錯字,而不是我的代碼,但謝謝。我發現我的問題,這是另一個錯字。我甚至在我張貼在這裏之前進行了三重檢查,但事實並非如此,但我猜想眼睛希望看到他們想看的東西。 – DerekConlon 2014-11-06 21:37:31

回答

1

沒關係。 我發現我的問題,它是一個錯字。

它應該是8:00a-10:00a,它是8:00a-10:00p。

對不起!

+0

我沒有看到兩者之間的任何區別... – 2014-11-06 21:37:41

+0

@MarcB'-10:00a' - >'-10:00p' – 2014-11-06 21:39:15

+0

嗯......人類已經過了漫長的一天。 – 2014-11-06 21:39:33

1

得到這個到我的本地服務器上運行:

function convert_time($time_code) { 
    switch ($time_code) { 
     case "8:00a-10:00p": return 1; 
    } 
} 

$testvariable = "8:00a-10:00p"; 
$testtimecode = convert_time($testvariable); 
echo "TTC: $testtimecode"; 

搞不清可能已經發生在你的結束,有可能出錯了服務器本身,而是這給了一槍。

相關問題