web-dev-qa-db-ja.com

「is not null」または空の文字列をチェックする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がnullまたは空の文字列ではないことを確認する条件を追加することです(特定の値である必要はありません。空にしたくないだけです。適切な方法は何ですか?これを行う?

これは土台の質問であることは知っていますが、PHPの経験はありません。アドバイスしてください、ありがとう!

Null OR空の文字列?

if (!empty($user)) {}

Empty()を使用します。


$ user〜= $ _POST ['user']に気づいた後(mattに感謝):

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

empty() を使用します。空の文字列とnullの両方をチェックします。

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)  
21
John Conde

PHPのstrlen()関数 を参照してください。文字列の長さを返します

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