如何檢查字符串中的最後一個字符是否是使用php的問號(?)?檢查最後一個字符是否爲問號
這是我目前的嘗試,但它似乎沒有工作,不幸的是:
if (substr(strrev(trim($link)),0,0) != "?")
{
}
如何檢查字符串中的最後一個字符是否是使用php的問號(?)?檢查最後一個字符是否爲問號
這是我目前的嘗試,但它似乎沒有工作,不幸的是:
if (substr(strrev(trim($link)),0,0) != "?")
{
}
if (substr(rtrim($link), -1) != "?") {
// Do stuff
}
給人一種負start
值substr()
使得它從末端,而不是指望開始。
+1,我12秒晚了 –
捱了一分鐘! – 2013-07-02 02:20:59
我想知道是否有人可以想出更好的解決方案,但我不會屏住呼吸......我認爲這是非常理想的。 '!=='會更好嗎? – Floris
您的代碼有兩個主要錯誤。首先,比較是錯誤的。你問最後一個字符是不是的問號。另外,您得到的長度爲0的子字符串,因此總是不等於問號,因爲'' != '?'
總是True
。
與原有的代碼,你可以把它改成這樣:
if (substr(strrev(trim($link)),0,1) == "?")
{
//Do things
}
或者,這是略短,只是計數從最終的子指數:
$link = "Say what?";
if (substr($link,-1) == "?")
{
echo "You heard me!";
}
'substr'的默認長度是直到字符串結尾,而不是1. – Barmar
@Barmar Eeek,我的不好。所有固定。 – 2013-07-02 02:39:46
感謝您的提示! –
它的PHP,總有替代品:
$link='123?';
if (end(str_split($link)) == "?"){
echo 'YES';
}
最簡單的方法是:
if (substr("question?", -1) == '?')
有時我也喜歡查?
!
或.
其他標記:
if (in_array(substr("question?", -1), ['?', '!' , '.']))
爲了什麼它的價值,我添加了解釋*一個答案,爲什麼你寫的是不是你做預期的*並解釋如何以更簡單的方式實現結果。 – 2013-07-02 02:32:18