PHP7 の新しい null 合体演算子: コードの null 検出操作を簡略化するにはどうすればよいですか?
PHP アプリケーションを開発する場合、ユーザーが入力したフォーム データの取得、データベース クエリ結果からのデータの取得など、null のチェックが必要な状況に遭遇することがよくあります。従来の記述方法では、三項演算子や isset()
関数を使って判定する必要があり、コードが長くなり、簡潔さが足りませんでした。 PHP7 では、新しい null マージ演算子 ??
が追加されました。これにより、コードの null 検出操作が簡素化され、コードの可読性と保守性が向上します。
具体的には、null 合体演算子 ??
は、変数が空かどうかを判断するために使用され、空の場合はデフォルト値を返します。構文は次のとおりです。
$value = $variable ?? $default;
上記のコードでは、$variable
は null にする必要がある変数で、$default
はデフォルト値です。 $variable
が空の場合、$value
には値 $default
が割り当てられ、それ以外の場合は $value
に値 # # が割り当てられます。 ## $variable の値。簡単に言うと、null 合体演算子は、変数が null かどうかを判断するプロセスを簡素化し、デフォルト値を提供します。
$username = $_POST['username'] ?? 'Anonymous'; echo "Welcome, " . $username;
$_POST を通じて取得します。 グローバル変数 ユーザーが入力し、null 合体演算子を使用して null かどうかを判断するユーザー名。ユーザー名が空の場合、
$username には値
'Anonymous' が割り当てられます。それ以外の場合は、ユーザーが入力したユーザー名が割り当てられます。次に、
echo ステートメントを通じてウェルカム メッセージを出力します。
$user = getUserFromDatabase($userId) ?? getDefaultUser();
getUserFromDatabase($userId) 関数を使用して、ユーザー情報をデータベースから取得します。取得に失敗した場合は、
null を返します。 null 合体演算子を使用して、返された結果を
getDefaultUser() 関数の戻り値と比較します。
getUserFromDatabase($userId) によって返された結果が空の場合は、
$user を
getDefaultUser() 関数の戻り値に割り当てます。それ以外の場合は、
$ user には、
getUserFromDatabase($userId) によって返された値が割り当てられます。
isset() 関数を使用して判断する必要があります。
以上がPHP7 の新しい null 合体演算子: コードの null 検出操作を簡素化するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。