0

重複の可能性:
$_POST-value が空かどうかを確認してください

このコードを使用して、渡された入力が空でないかどうかを検証していますが、入力に「空白」を使用すると失敗します。empty()チェックに合格します。

if (empty($_POST['r_user'])) {
    $data['error'] = 'Please pick a username to continue.';
    $data['errorID'] = 'r_user';
}

PHPで空の文字列をチェックする適切な方法は何ですか?

4

7 に答える 7

4

trim function変数をチェックする前に使用する必要があります。

$trimUser= trim ($_POST['r_user']);

空のメソッドを実行します。

于 2012-09-17T12:37:43.557 に答える
2

PHP ドキュメントの提案に従って、コードは次のようになります。

if (trim($_POST['r_user']) == false) {
    $data['error'] = 'Please pick a username to continue.';
    $data['errorID'] = 'r_user';
}
于 2012-09-17T12:35:52.667 に答える
1

trim()文字列の先頭と末尾から空白を削除でき ます

実施例

      $test = "      ";
      if(trim($test)){
         if (empty($test))
             echo "true";
         else
             echo "false";
      }

live : コードパッドでこれを確認してください

于 2012-09-17T12:34:19.953 に答える
0

ここでトリムをうまく使用できます。前後の空白を削除します。

if (empty(trim($_POST['r_user']))) { // Incorrect!

編集、うわー、今日新しいことを学びました。

ただし、これは機能します。

$var=trim($_POST['r_user']);
if (empty($var)) {

作業例:

 <?php 
    $var='    ';
    $var=trim($var);
    if(empty($var))
        echo "Yay";
    else
        echo "Nay!";

 ?>

出力:

わーい

于 2012-09-17T12:34:04.857 に答える
0
if ( empty( trim( $_POST['r_user'] ))) { 

// 違う!エラーが発生します - 何か新しいことを学びました:) //正しい方法は次のとおりです:

$myvar = trim( $_POST['r_user'] ); 

if ( empty( $myvar )) { 

また

if ( trim( $_POST['r_user'] ) != '' ) {
于 2012-09-17T12:36:15.247 に答える
0

あなたは使用することができます:

$var = '';
if (array_key_exists('r_user', $_POST)) {
  $var = trim($_POST['r_user']);
} 
if (empty($var)) {
   // do some stuffs
}

代わりは。

于 2012-09-17T12:36:20.170 に答える
-1
if(isset($_POST['r_user'])){
           // ur code
           }
于 2012-09-17T12:45:44.900 に答える