检查“不是空”或空字符串的PHP语法是什么?

可能的重复:
检查变量是否为空

简单的 PHP 问题:

我有这个阵痛:

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的经验。请指教,谢谢!


答案 1

空或空字符串?

if (!empty($user)) {}

使用空()。


在意识到$user ~= $_POST['user'] (感谢 matt) 之后:

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

答案 2

使用空()。它检查空字符串和空值。

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)  

推荐