# 表達式(Expressions)
volt模板引擎提供表達式支持,包括文字和常見操作符
輸入:
~~~
{{ (1 + 1) * 2 }}
~~~
輸出:
~~~
4
~~~
如果表達式結果無需輸出顯示,則可以在前面加上do操作符
輸入:
~~~
{% do (1 + 1) * 2 %}
~~~
輸出:
~~~
此時只會執行表達式,不會有任何輸出
~~~
### 運算符
運算符主要包括算術運算符、比較運算符、邏輯運算符和其它運算符
#### [](https://github.com/jword/stardoc/blob/master/volt%E6%A8%A1%E6%9D%BF%E5%BC%95%E6%93%8E.md#%E7%AE%97%E6%9C%AF%E8%BF%90%E7%AE%97%E7%AC%A6)算術運算符
| 操作符 | 作用 | 示例 |
| :-: | :-: | :-: |
| + | 加法操作 | {{ a+b }} |
| \- | 減法操作 | {{ a-b }} |
| \* | 乘法操作 | {{ a\*b }} |
| / | 除法操作 | {{ a/b }} |
| % | 取余操作 | {{ a%b }} |
#### [](https://github.com/jword/stardoc/blob/master/volt%E6%A8%A1%E6%9D%BF%E5%BC%95%E6%93%8E.md#%E6%AF%94%E8%BE%83%E8%BF%90%E7%AE%97%E7%AC%A6)比較運算符
| 操作符 | 作用 |
| :-: | :-: |
| \== | 等于(元素值相同) |
| != | 不等于 |
| <> | 不等于 |
| \> | 大于 |
| < | 小于 |
| <= | 小于等于 |
| \>= | 大于等于 |
| \=== | 全等于(元素值和類型都相同) |
| !== | 不全等于(元素值和類型至少有一樣不同) |
#### [](https://github.com/jword/stardoc/blob/master/volt%E6%A8%A1%E6%9D%BF%E5%BC%95%E6%93%8E.md#%E9%80%BB%E8%BE%91%E8%BF%90%E7%AE%97%E7%AC%A6)邏輯運算符
| 操作符 | 作用 |
| :-: | :-: |
| or | 或 |
| and | 且 |
| not | 非 |
| (expr) | 表達式 |
#### [](https://github.com/jword/stardoc/blob/master/volt%E6%A8%A1%E6%9D%BF%E5%BC%95%E6%93%8E.md#%E5%85%B6%E5%AE%83%E8%BF%90%E7%AE%97%E7%AC%A6)其它運算符
| 操作符 | 作用 |
| :-: | :-: |
| ~ | 連接兩個操作數 |
| | | 為最左側變量增加過濾器 |
| .. | 創建一個包含指定范圍單元的數組 |
| is | 等于 |
| in | 檢查表達式是否包含在其他表達式中 |
| is not | 不等于 |
| a ? b : c | 三目運算 |
| ++ | 自增 |
| \-- | 自減 |
`~`
用法示例:
~~~
{# 連接兩個字符串并去除最右側的 '-' 字符 #}
{% set prop = '' %}
{% set property = ['a','b','c'] %}
{% for item in property %}
{% set prop = prop~item['val']~'-' %}
{% endfor %}
{{ prop|right_trim('-') }}
{# 輸出:a-b-c #}
~~~
`..`
用法示例:
~~~
{# 創建一個包含指定范圍單元的數組 #}
{% for index in 0..2 %}
{{ index }}
{% endfor %}
{# 輸出:0 1 2 #}
~~~
`a ? b : c`
用法示例:
~~~
{# 三目運算:a為真則執行b否則執行c #}
{% set a=true %}
{{ a ? 'true ' : 'false ' }}
{% set a='2' %}
{{ a ? 'true ' : 'false ' }}
{% set a='' %}
{{ a ? 'true ' : 'false ' }}
{# 輸出:true true false #}
~~~
- 序言
- 基礎
- 安裝
- 規范
- 目錄
- 配置
- 架構
- 入口文件
- 偽靜態配置
- Facade
- 使用行為
- 路由
- 路由定義
- 控制器
- 定義控制器
- 數據庫
- 連接數據庫
- 鏈式操作
- where
- builder
- field
- limit
- page
- order
- group
- find
- select
- value
- count
- sum
- average
- maximum
- minimum
- column
- update
- insert
- delete
- begin
- rollback
- commit
- left
- right
- inner
- for_update
- shared_lock
- cache
- 構造器
- 查詢
- 添加
- 更新
- 刪除
- 模型
- 創建模型
- 自動時間戳
- 模型關聯
- 模型事件
- 數據轉換
- 軟刪除
- 視圖
- 模板
- 日志
- 調試
- 驗證
- CLI命令行
- 標準
- 命名規范
- 語法規范
- 注釋規范
- 設計模式
- 開發提示
- 數據字典
- Markdown使用文檔
- volt模板引擎
- 簡介
- 注釋
- 變量
- 過濾器
- 流程控制
- 循環語句for
- 條件判斷語句if
- 表達式及運算符
- 函數