[英]PHP what is wrong with the syntax of this code?
我在php中建立一些簡單的驗證規則,而我的IDE(phped)抱怨語法。
誰能告訴我以下內容有什么問題嗎?
function notBlank($str) {
(strlen($str) == 0) ? return false : return true;
}
phped抱怨“意外的回報”
任何建議表示贊賞。
謝謝。
這樣寫:
function notBlank($str){
return strlen($str) != 0;
}
像這樣寫:
function notBlank($str) {
return ( strlen($str) == 0 ? false : true );
}
您不能在三元運算符中使用return。 如果要保留該語法,則必須執行以下操作:
function notBlank($str = '') {
$var = (strlen($str) == 0) ? false : true;
return $var;
}
不過,請注意,默認的處理方式更清晰:
function notBlank($str = '') {
if(strlen($str) == 0)
return false;
else
return true;
}
希望能幫助到你!
GSto的答案似乎是最好的,盡管您可能還想查看php的empty
函數:
當字符串為空時, strlen()
返回0,而在PHP中, 0==false
。 因此,實際上,沒有必要將strlen()
包裝在函數中。 如果您要堅持布爾答案,請強制轉換。 即:
(bool) strlen($string);
因此,如果沒有函數(可能在if塊中調用),則只需
if(strlen($string)) //etc.
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.