PHP8.1 の新しい match 式: 複数の条件判定を簡素化

WBOY
リリース: 2023-07-08 13:06:01
オリジナル
1044 人が閲覧しました

PHP は非常に人気のあるサーバーサイド スクリプト言語であり、常に開発と改善が行われています。 PHP8.1 の最新バージョンでは、式の一致という重要な新機能が追加されました。この新機能により、複数の条件判断がよりシンプルかつ読みやすくなります。この記事では、一致式の使用法を紹介し、いくつかのコード例を通してそれを示します。

PHP では、さまざまな変数や式に対して複数の条件判断を実行する必要があることがよくあります。従来の方法は、一連の if-else ステートメントを使用することです。 match 式は、より簡潔な記述方法を提供します。簡単な例を見てみましょう:

$value = 5;

$result = match($value) {
    1 => 'One',
    2 => 'Two',
    3, 4 => 'Three or Four',
    default => 'Other'
};

echo $result; // 输出:Other
ログイン後にコピー

上記のコードでは、一致式を使用して変数 $value の値を決定します。 match の後の括弧は、判定する必要がある変数または式です。矢印の後に、一致する必要がある値をリストし、矢印の後に対応する結果をたどることができます。一致する値がない場合は、default キーワードを使用してデフォルトの結果を指定できます。この例では、$value の値は 5 で、指定された値のいずれにも一致しないため、最終結果は「Other」になります。

単一の値のマッチングに加えて、リストを使用してマッチングすることもできます。以下はサンプル コードです。

$value = 20;

$result = match($value) {
    in_array($value, [1, 2, 3]) => 'One, Two or Three',
    in_array($value, [4, 5, 6]) => 'Four, Five or Six',
    default => 'Other'
};

echo $result; // 输出:Other
ログイン後にコピー

上記のコードでは、in_array 関数を使用して、$value が指定されたリストにあるかどうかを判断します。一致が成功すると、対応する結果が返されます。一致するものが見つからない場合は、デフォルトの結果が返されます。

さらに、一致式では、一致のための他の式や関数の使用もサポートされています。特定のニーズに応じて組み合わせて使用​​できます。次に、より複雑な例を示します。

$value = 100;

$result = match(true) {
    in_array($value, range(1, 10)) => 'One to Ten',
    $value > 10 && $value < 100 => 'Between Ten and One Hundred',
    is_numeric($value) => 'Numeric Value',
    default => 'Others'
};

echo $result; // 输出:Others
ログイン後にコピー

上記のコードでは、$value の値が 1 から 10 の範囲内であるかどうか、およびそれが 1 ~ 10 の範囲内であるかどうかを判断します。 10から100の範囲内で、それが数字であるかどうか。さまざまな条件に従って結果を照合し、対応する結果を返します。

上記の例を通じて、match 式のコードが従来の if-else ステートメントよりも簡潔で読みやすいことがわかります。複数の条件を同時に処理でき、さまざまな式や関数を使用したマッチングをサポートします。複数の条件判断の場合、一致式を使用すると、より洗練された効率的なプログラミング方法を提供できます。

要約すると、PHP8.1 の新しい一致式により、複数の条件判断がより単純化され、読みやすくなります。 match 式を使用すると、複雑な論理的判断を簡潔なコードに変換でき、コードの可読性と保守性が向上します。 PHP 開発者にとって、一致式の使用をマスターすると、開発効率が向上し、コードがより簡潔でエレガントになります。

以上がPHP8.1 の新しい match 式: 複数の条件判定を簡素化の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!