2017-01-30 97 views
2

我用我的項目PHP和任何形式提交時,我需要檢查,如果輸入它不是空的,所以我用這樣的:如何檢查輸入值是不是空格?

if(empty($myVar)) { 
    echo "Error"; 
} else { 
    echo "success"; 
} 

但這似乎並不奏效因爲如果用戶輸入空格如「」,所以引號之間不過是空白,但PHP仍然顯示成功消息而不是錯誤消息。

我也使用了isset($ var),但它是相同的,不能按我的需要工作。

可能是什麼問題?和如何解決它?

+2

'empty(trim($ myVar))',你很好。而且,因爲我們在這個世界,你的意思更多:'視力空虛' – JustOnUnderMillions

回答

5

使用trim功能,從而消除空格開頭和一個字符串的結尾:如果你想

if(empty(trim($myVar))) { 
    echo "Error" 
} else { 
    echo "success"; 
} 
+0

非常感謝,你救了我的一天:) 但我有一個快速的問題,爲什麼空的函數在這個狀態沒有用?爲什麼它不把空間視爲一個真實的角色? 或者這個功能究竟發生了什麼? –

+0

這裏是一個手冊頁http://php.net/manual/en/function.empty.php#refsect1-function.empty-returnvalues它描述了哪些值被認爲是空的 –

+0

@Maohammed Hayder非常重要和有用的表格http:// php.net/manual/en/types.comparisons.php – JustOnUnderMillions

3
echo empty(trim($myVar)) ? 'Error' : 'success'; 
2

trim$_POST各個領域,使用以下命令:

$_POST = array_map("trim", $_POST); 

然後你可以檢查empty()

但是,這隻有在你有幾個字段時纔有用。對於只有一個,你應該遵循empty(trim($var))

2

直接的方式,我建議你應該首先檢查emptyness如下

if(empty(trim($myVar))) { 
    echo "Error"; 
} else { 
    echo "success"; 
} 

之前修剪$ myVar的是什麼,這將要做的是將刪除任何開頭或結尾來自變量$ myVar的空格,然後檢查變量是否爲空。