本篇文章給大家分享的是有關(guān)如何在PHP模板引擎smarty生成隨機(jī)數(shù)的方法和math函數(shù),小編覺(jué)得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說(shuō),跟著小編一起來(lái)看看吧。
創(chuàng)新互聯(lián)建站服務(wù)項(xiàng)目包括文圣網(wǎng)站建設(shè)、文圣網(wǎng)站制作、文圣網(wǎng)頁(yè)制作以及文圣網(wǎng)絡(luò)營(yíng)銷(xiāo)策劃等。多年來(lái),我們專(zhuān)注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢(shì)、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,文圣網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到文圣省份的部分城市,未來(lái)相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!
這個(gè)當(dāng)然絕對(duì)是可行的,但過(guò)于復(fù)雜,下面作者就如何直接在smarty模板中生成隨機(jī)數(shù)這個(gè)小技巧和大家分享一下。
現(xiàn)在假設(shè)在smarty模板中需要生成一個(gè)125-324之間的隨機(jī)數(shù),那么可以按如下寫(xiě)法:
代碼如下:
{math equation=rand(125,324)}
這樣就實(shí)現(xiàn)了我們的目的了,怎么樣?是不是很簡(jiǎn)單,其實(shí)這里主要用到了smarty模板中的math函數(shù),下面對(duì)Smarty math函數(shù)的作用以及用法做個(gè)簡(jiǎn)要的講解。
math 允許模板設(shè)計(jì)者在模板中進(jìn)行數(shù)學(xué)表達(dá)式運(yùn)算. 均表達(dá)式中可以使用任何數(shù)值類(lèi)型的變量,結(jié)果在 math 標(biāo)簽的位置輸出. 表達(dá)式中使用的變量被當(dāng)做參數(shù)傳遞給函數(shù),可以是模板變量或靜態(tài)值. 目前可以使用的運(yùn)算符有:+, -, /, *, abs, ceil, cos, exp, floor, log, log10, max, min, pi, pow, rand, round, sin, sqrt, srans 和 tan .關(guān)于數(shù)學(xué)函數(shù)的詳細(xì)信息,請(qǐng)查看 PHP 文檔。
如果指定了 "assign" 這個(gè)特殊屬性,該函數(shù)的輸出值將被賦給由 assign 指定的模板變量,而不是直接輸出。
不過(guò)需要注意的是: 由于使用了 php 的 eval() 函數(shù),math 函數(shù)的執(zhí)行效率不高. 在 PHP 中做數(shù)學(xué)運(yùn)算效率會(huì)更高一些,因此要盡可能在 PHP 中做數(shù)學(xué)運(yùn)算,將結(jié)果賦給模板變量。
smarty math
函數(shù)演示
代碼如下:
{* $height=4, $width=5 *} {math equation="x + y" x=$height y=$width}
輸出結(jié)果:9
代碼如下:
{* $row_height = 10, $row_width = 20, #col_p# = 2, assigned in template *} {math equation="height * width / pision" height=$row_height width=$row_width pision=#col_p#}
輸出結(jié)果:100
代碼如下:
{math equation="(( x + y ) / z )" x=2 y=10 z=2}
輸出結(jié)果:6
代碼如下:
{* you can supply a format parameter in sprintf format *} {math equation="x + y" x=4.4444 y=5.0000 format="%.2f"}
輸出結(jié)果:9.44
以上就是如何在PHP模板引擎smarty生成隨機(jī)數(shù)的方法和math函數(shù),小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見(jiàn)到或用到的。希望你能通過(guò)這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。