国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PHP > 正文

在PHP模板引擎smarty生成隨機數的方法和math函數詳解

2024-05-04 23:23:06
字體:
來源:轉載
供稿:網友

這個當然絕對是可行的,但過于復雜,下面作者就如何直接在smarty模板中生成隨機數這個小技巧和大家分享一下。

現在假設在smarty模板中需要生成一個125-324之間的隨機數,那么可以按如下寫法:

復制代碼 代碼如下:


{math equation=rand(125,324)}

這樣就實現了我們的目的了,怎么樣?是不是很簡單,其實這里主要用到了smarty模板中的math函數,下面對Smarty math函數的作用以及用法做個簡要的講解。

math 允許模板設計者在模板中進行數學表達式運算. 均表達式中可以使用任何數值類型的變量,結果在 math 標簽的位置輸出. 表達式中使用的變量被當做參數傳遞給函數,可以是模板變量或靜態值. 目前可以使用的運算符有:+, -, /, *, abs, ceil, cos, exp, floor, log, log10, max, min, pi, pow, rand, round, sin, sqrt, srans 和 tan .關于數學函數的詳細信息,請查看 PHP 文檔。

如果指定了 "assign" 這個特殊屬性,該函數的輸出值將被賦給由 assign 指定的模板變量,而不是直接輸出。

不過需要注意的是: 由于使用了 php 的 eval() 函數,math 函數的執行效率不高. 在 PHP 中做數學運算效率會更高一些,因此要盡可能在 PHP 中做數學運算,將結果賦給模板變量。

smarty math 函數演示

復制代碼 代碼如下:


{* $height=4, $width=5 *}

{math equation="x + y" x=$height y=$width}


輸出結果:9

復制代碼 代碼如下:


{* $row_height = 10, $row_width = 20, #col_div# = 2, assigned in template *}

{math equation="height * width / division"
 height=$row_height
 width=$row_width
 division=#col_div#}


輸出結果:100

復制代碼 代碼如下:

{math equation="(( x + y ) / z )" x=2 y=10 z=2}


輸出結果:6

復制代碼 代碼如下:


{* you can supply a format parameter in sprintf format *}

{math equation="x + y" x=4.4444 y=5.0000 format="%.2f"}


輸出結果:9.44

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 依兰县| 增城市| 手游| 巴里| 牟定县| 嘉义县| 永泰县| 瑞昌市| 祁连县| 张家界市| 冀州市| 怀宁县| 德惠市| 建宁县| 多伦县| 西城区| 揭东县| 稷山县| 丹巴县| 敦化市| 湘西| 元谋县| 两当县| 石家庄市| 龙岩市| 兴仁县| 宜君县| 广灵县| 五峰| 安顺市| 盐源县| 蓝田县| 阳东县| 南汇区| 昌黎县| 刚察县| 噶尔县| 都匀市| 嘉禾县| 珠海市| 五常市|