什么是PHP语法检查“不为空”或空字符串? [重复](What is the PHP synta

2019-06-25 19:39发布

可能重复:
检查一个变量是空的

简单的PHP问题:

我有这个stement:

if (isset($_POST["password"]) && ($_POST["password"]=="$password")) {
...//IF PASSWORD IS CORRECT STUFF WILL HAPPEN HERE
}

某处这种说法我用下面一行在我的JavaScript来设置用户名作为两个在我的JavaScript和我的PHP变量上面:

uservariable = <?php $user = $_POST['user']; print ("\"" . $user . "\"")?>;

我想要做的就是添加一个条件,以确保$ USER不为空或空字符串(它不必是任何特定的值,我只是不希望它是空的。什么是正确的方法做这个?

我知道这是一个门槛问题,但我有PHP没有经验。 请指教,谢谢!

Answer 1:

null或空字符串?

if (!empty($user)) {}

使用空()。


意识到$用户〜= $ _POST [ '用户'](感谢亚光)后:

var uservariable='<?php 
    echo ((array_key_exists('user',$_POST)) || (!empty($_POST['user']))) ? $_POST['user'] : 'Empty Username Input';
?>';


Answer 2:

使用empty() 它检查两个空字符串和空。

if (!empty($_POST['user'])) {
  // do stuff
}

从手册:

下面的事情被认为是空的:

"" (an empty string)  
0 (0 as an integer)  
0.0 (0 as a float)  
"0" (0 as a string)    
NULL  
FALSE  
array() (an empty array)  
var $var; (a variable declared, but without a value in a class)  


Answer 3:

见PHP的strlen()函数 。 它将返回字符串的长度

if (isset($_POST['user']) && strlen($_POST['user']) > 0)


文章来源: What is the PHP syntax to check “is not null” or an empty string? [duplicate]