分享
三行代码  ›  专栏  ›  技术社区  ›  Immo Broker

If-elseif-else三元运算符

  •  0
  • Immo Broker  · 技术社区  · 1 周前

    如何将此代码写成三元运算符:

    if (isset($_SESSION['lang'])) {
    $_SESSION['lang']   = $_SESSION['lang'];
    } elseif (isset($_GET['lang'])) {
    $_SESSION['lang']   = $_GET['lang'];
    } else {
    $_SESSION['lang']   = $defaultLanguage;
    }
    

    我用了这个代码,但它不起作用。

    $lang   = (isset($_SESSION['lang']) ? $_SESSION['lang']) : (isset($_GET['lang']) ? $_GET['lang'] : $defaultLanguage);
    

    提前谢谢

    1 回复  |  直到 1 周前
        1
  •  1
  •   Nigel Ren    1 周前

    可以使用空合并( ?? )...

    $lang = $_SESSION['lang'] ?? $_GET['lang'] ?? $defaultLanguage;