検索
ホームページバックエンド開発PHP8PHP8 の Match 式を使用して複数の条件をより簡潔に処理するにはどうすればよいですか?

PHP8 の Match 式を使用して複数の条件をより簡潔に処理するにはどうすればよいですか?

PHP8 の Match 式を使用して複数の条件をより簡潔に処理するにはどうすればよいですか?

PHP8 では、新しい式である Match 式が導入されています。これは、複数の条件を処理する場合に、以前の if-elseif-else ステートメントよりも簡潔で直感的です。一致式では、値の一致と処理が容易になる新しい構文構造が使用されます。

Match 式の基本的な構文は次のとおりです。

$result = match ($value) {
    $condition1 => $result1,
    $condition2 => $result2,
    ...
    $conditionN => $resultN,
    default => $defaultResult,
};

この構文を使用すると、1 行のコードで複数の条件を処理し、さまざまな条件に応じてさまざまな結果を返すことができます。以下では、いくつかの具体的な例を使用して、Match 式を使用して複数の条件を簡潔に処理する方法を説明します。

例 1: ユーザーのログイン ID に基づいて対応するウェルカム メッセージを返す

$userType = getUserType();

$welcomeMessage = match ($userType) {
    'admin' => '欢迎管理员!',
    'user' => '欢迎普通用户!',
    'guest' => '欢迎游客!',
    default => '欢迎访问!',
};

echo $welcomeMessage;

この例では、Match 式を使用して、ユーザーのログイン ID に基づいて対応するウェルカム メッセージを返します。 $userType の値に応じて、Match 式は異なる結果を返します。

例 2: 製品タイプに基づいて注文の割引価格を計算する

$productType = getProductType();

$discountPrice = match ($productType) {
    '电子产品' => $orderPrice * 0.8,
    '服装鞋包' => $orderPrice * 0.9,
    '食品饮料' => $orderPrice * 0.95,
    default => $orderPrice,
};

echo '折扣后的价格为:' . $discountPrice;

この例では、Match 式を使用して、製品タイプに基づいて注文の割引価格を計算します。さまざまな $productType 値に従って、Match 式は対応する割引価格を返します。

例 3: HTTP リクエストのステータス コードの処理

$httpStatusCode = getHttpStatusCode();

$message = match ($httpStatusCode) {
    200 => '请求成功',
    301 => '永久重定向',
    404 => '页面不存在',
    500 => '服务器错误',
    default => '未知状态',
};

echo '状态码' . $httpStatusCode . ':' . $message;

この例では、Match 式を使用して、HTTP リクエストのステータス コードに基づいて対応する情報を返します。異なる $httpStatusCode 値に従って、Match 式は異なるメッセージを返します。

上記の例からわかるように、Match 式を使用すると、複数の条件を簡潔に処理し、さまざまな条件に従って対応する結果を返すことができます。多くの if-elseif-else ステートメントが削除され、コードがより明確で読みやすくなります。

Match 式には複数の条件を処理する場合に一定の利点がありますが、Match 式によって照合される条件は式ではなく値である必要があることに注意してください。さらに、Match 式のデフォルト ブランチはオプションであり、条件が一致しない場合は null を返します。

つまり、PHP8 の Match 式を使用すると、複数の条件をより簡潔に処理できるようになり、コードがより簡潔で読みやすくなります。 PHP 開発者が複数の条件文を扱う場合、これは良い選択です。

以上がPHP8 の Match 式を使用して複数の条件をより簡潔に処理するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

VSCode Windows 64 ビットのダウンロード

VSCode Windows 64 ビットのダウンロード

Microsoft によって発売された無料で強力な IDE エディター

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

mPDF

mPDF

mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。