首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 相關知識

Smarty 模板中直接產生隨機數:math 函數實戰

     編輯:PHP 相關知識

前言

在模板中需要隨機數時,不必從 PHP 傳遞,Smarty 內建 {math} 函數即可直接產生。本文介紹 math 函數用法與隨機數產生技巧。

快速範例:產生 125-324 間隨機整數

{math equation=rand(125,324)}

math 函數完整語法

{math equation="運算式" 變數=值 ... [format="格式"] [assign="變數名"]}

支援運算子與函數

+, -, *, /, abs, ceil, cos, exp, floor, log, log10, max, min, pi, pow, rand, round, sin, sqrt, srand, tan

參數說明

  • equation:數學運算式,可使用變數
  • format:輸出格式(sprintf 格式,如 "%.2f")
  • assign:指定輸出賦值給模板變數,而非直接顯示

實戰範例

程式碼說明輸出
{math equation="x + y" x=4 y=5}基本加法9
{math equation="height * width / division" height=10 width=20 division=2}複合運算100
{math equation="((x + y) / z)" x=2 y=10 z=2}括號優先序6
{math equation="x + y" x=4.4444 y=5.0000 format="%.2f"}格式化小數9.44
{math equation="rand(1,100)" assign="rand_num"}指派變數(不輸出,{$rand_num} 可用)

效能提醒

注意:math 底層使用 PHP eval(),執行效率較低。大量運算或高頻頁面建議在 PHP 控制器預先計算,再指派給模板。

適用場景

  • 模板原型快速開發
  • 低頻頁面的簡單數值計算
  • 前端展示用隨機裝飾數值
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved