php检查用户输入是否不是空格

Jam*_*mol 1 php validation input

我有以下代码来检查用户输入:

if(isset($_POST['block_name']) && !empty($_POST['block_name'])) {
    $block->name = trim($_POST['block_name']);
}
Run Code Online (Sandbox Code Playgroud)

但它接受 SPACE 作为有效输入,所以我改为:

if(isset($_POST['block_name']) && !empty($_POST['block_name']) && trim($_POST['block_name'])!='') {
        $block->name = trim($_POST['block_name']);
    }
Run Code Online (Sandbox Code Playgroud)

我在网上发现我也可以使用 !=false 。有什么区别,推荐哪个。

dec*_*eze 5

''false在松散的比较中等于,所以没有真正的区别。既然'0'也等于false,你可能想让你的检查更严格。如果未设置变量,empty也只是检查false而不触发错误。所以一isset && !empty开始是多余的。

用:

if (isset($_POST['block_name']) && strlen(trim($_POST['block_name'])) > 0)
Run Code Online (Sandbox Code Playgroud)