贝利信息

Laravel Blade 中的三元运算符实现单选按钮默认选中逻辑

日期:2026-01-17 00:00 / 作者:碧海醫心

本文详解 laravel blade 模板中 `{{ ($site->is_active=="0") ? "checked" : "" }}` 的作用:它利用 php 三元运算符动态输出 `checked` 属性,使 radio 按钮根据模型数据自动选中或不选中。

在 Laravel 的 Blade 模板中,{{ ... }} 是「回显(echo)语法」,用于将 PHP 表达式的结果安全地输出到 HTML 中(默认会自动转义,防止 XSS)。你看到的这段代码:

is_active=="0") ? "checked" : "" }}>

本质上等价于以下原生 PHP 写法(但更简洁、更符合 Blade 风格):

is_active == "0") ? "checked" : ""; ?>>

其中,($site->is_active=="0") ? "checked" : "" 是一个三元运算符表达式,其执行逻辑为:

由于 HTML 中只要存在 checked 属性(无论值为何),该 radio 就会被浏览器视为已选中,因此当输出 "checked" 时,最终渲染的 HTML 类似:

而当条件不满足时,输出为空,属性被省略,渲染结果为:

注意事项与最佳实践:

掌握这一模式,不仅能正确渲染表单状态,更是理解 Blade 动态模板能力的关键入口——它让 HTML 不再静态,而是随后端数据实时响应。