Heim  >  Artikel  >  Backend-Entwicklung  >  Wie verwende ich den Match-Ausdruck, um Bedingungen in PHP8 präziser zu beurteilen?

Wie verwende ich den Match-Ausdruck, um Bedingungen in PHP8 präziser zu beurteilen?

WBOY
WBOYOriginal
2023-10-19 10:12:361343Durchsuche

Wie verwende ich den Match-Ausdruck, um Bedingungen in PHP8 präziser zu beurteilen?

Wie verwende ich den Match-Ausdruck, um Bedingungen in PHP8 präziser zu beurteilen?

In PHP8 wird eine neue bedingte Beurteilungssyntax – Match-Ausdruck – eingeführt, die es uns ermöglicht, mehrere Bedingungen zu beurteilen und den entsprechenden Codeblock präziser auszuführen. Match-Ausdrücke ähneln Switch-Anweisungen, sind jedoch prägnanter und einfacher zu lesen als Switch.

Die Syntax für die Verwendung des Match-Ausdrucks lautet wie folgt:

$result = match ($value) {
    value1 => expression1,
    value2 => expression2,
    value3 => expression3,
    ...
    default => expression
};

In dieser Syntax ist $value der zu beurteilende Wert, gefolgt von einer Reihe bedingter Werte und Ausdrücke. Wenn der Wert von $value mit einem bestimmten Bedingungswert übereinstimmt, wird der entsprechende Ausdruck ausgeführt.

Als nächstes werden wir anhand spezifischer Codebeispiele demonstrieren, wie man Match-Ausdrücke verwendet, um Bedingungen in PHP8 präziser zu bestimmen.

Betrachten Sie zunächst ein einfaches Beispiel. Wir möchten anhand seines Alters ermitteln, zu welcher Altersgruppe der Benutzer gehört, und die entsprechende Nachricht ausdrucken. Der traditionelle Ansatz besteht möglicherweise darin, eine if-Anweisung zu verwenden. Der Code lautet wie folgt:

$age = 20;
if ($age >= 18 && $age <= 25) {
    echo "你是青年人";
} elseif ($age > 25 && $age <= 35) {
    echo "你是中年人";
} elseif ($age > 35) {
    echo "你是老年人";
} else {
    echo "你还是未成年人";
}

Mit dem Match-Ausdruck können wir den obigen Code prägnanter implementieren, wie unten gezeigt:

$age = 20;
$result = match (true) {
    $age >= 18 && $age <= 25 => "你是青年人",
    $age > 25 && $age <= 35 => "你是中年人",
    $age > 35 => "你是老年人",
    default => "你还是未成年人"
};
echo $result;

Wie aus dem obigen Code ersichtlich ist, haben wir Verwenden Sie den Match-Ausdruck. Die Formel bildet die Bedingungen und entsprechenden Ausdrücke in Form von Schlüssel-Wert-Paaren ab. Wenn der Wert von $value eine bestimmte Bedingung erfüllt, wird der entsprechende Ausdruck ausgeführt und das Ergebnis der Variablen $result zugewiesen.

Darüber hinaus können wir auch Funktionsausdrücke in Match-Ausdrücken verwenden, um den Code weiter zu vereinfachen. Betrachten Sie das folgende Beispiel, in dem wir die Berechtigungsstufe des Benutzers im System anhand seiner Rolle ermitteln und die entsprechende Textnachricht zurückgeben möchten. Der traditionelle Ansatz besteht möglicherweise darin, eine Switch-Anweisung zu verwenden. Der Code lautet wie folgt:

$role = "admin";
$permission = "";
switch ($role) {
    case "admin":
        $permission = "完全权限";
        break;
    case "moderator":
        $permission = "部分权限";
        break;
    case "user":
        $permission = "只读权限";
        break;
    default:
        $permission = "未知权限";
}
echo "您的权限级别为:" . $permission;

Mit dem Match-Ausdruck können wir den obigen Code prägnanter implementieren, wie unten gezeigt:

$role = "admin";
$result = match ($role) {
    "admin" => "完全权限",
    "moderator" => "部分权限",
    "user" => "只读权限",
    default => "未知权限"
};
echo "您的权限级别为:" . $result;

Wie aus dem obigen Beispiel Match ersichtlich ist Der Ausdruck kann problemlos die herkömmliche Syntax der bedingten Beurteilung ersetzen, um den Code prägnanter und lesbarer zu machen. Es bietet eine intuitivere und effizientere Möglichkeit, mehrere bedingte Verzweigungen zu verarbeiten. Wenn wir mehrere Bedingungen beurteilen müssen, kann die Verwendung von Match-Ausdrücken den Code eleganter machen und die Wartbarkeit des Codes verbessern.

Zusammenfassung:
In PHP8 wird eine neue bedingte Beurteilungssyntax – Match-Ausdruck – eingeführt, mit der Bedingungen präziser beurteilt und der entsprechende Codeblock ausgeführt werden kann. Mithilfe von Match-Ausdrücken können wir Beurteilungen mit mehreren Bedingungen mit weniger Code implementieren und die Lesbarkeit des Codes verbessern. In der tatsächlichen Entwicklung können wir die Verwendung von Match-Ausdrücken anhand spezifischer Codebeispiele erlernen und beherrschen, sodass wir sie auf tatsächliche Projekte anwenden und die Entwicklungseffizienz und Codequalität verbessern können.

Das obige ist der detaillierte Inhalt vonWie verwende ich den Match-Ausdruck, um Bedingungen in PHP8 präziser zu beurteilen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn