[精讚] [會員登入]

[Smarty4] 出現 modifiers 函式不能用的問題

當我把smarty由3版更新到4.5.1版的時候,出現了Using unregistered function xx in a template這樣的錯誤,該如何解決?

分享完整連結 //n.sfs.tw/m10939

分享連結 [Smarty4] 出現 modifiers 函式不能用的問題@精讚
(文章歡迎轉載,請尊重版權註明連結來源)
2024-06-09 02:16:28 By 張○○

當我把smarty由3版更新到4.5.1版的時候,出現了錯誤:

A PHP Error was encountered

Severity: 16384

Message: Using unregistered function "urlencode" in a template is deprecated and will be removed in a future release. Use Smarty::registerPlugin to explicitly register a custom modifier.

Filename: sysplugins/smarty_internal_compile_private_modifier.php

簡單來說,這個 urlencode是php的函式拿來作view中的 modifier (輔助修改函數)。在4版時只要把smarty物件註冊即可:

$smarty->registerPlugin("modifier", "substr", "substr");
$smarty->registerPlugin("modifier", "rand", "rand");
$smarty->registerPlugin("modifier", "json_encode", "json_encode");

 

And the same for every modifier you need. The other option is to replace the modifier with the use of the function, so this:

{$var|substr:0:10}

To this:

{substr($var,0,10)}

 

 

相關連結

https://stackoverflow.com/questions/77170834/why-will-smarty-remove-support-for-using-php-functions-as-modifiers

END
你可能有興趣

check-host 從世界各地檢查你的網站能不能連線?

檢測你的網站能不能暢通?這個網站可讓你知道你的網站是不是「網際網路」還是「區域網路」?

[Smarty4] 出現 modifiers 函式不能用的問題

當我把smarty由3版更新到4.5.1版的時候,出現了Using unregistered function xx in a template這樣的錯誤,該如何解決?

[Docker] docker中要怎麼修改影像的名稱,rename image

透過 build來的image如果沒有指定名稱,事後要怎麼修改影像的名稱?

[Rocky9] 安裝node.js 18, node.js 20

原本的nodejs16在使用 quasar dev時出現錯誤,得升級成18版以上

[SSL] Could not read certificate from server.cer 的錯誤排除

在轉換ssl憑證時,出現無法讀取的錯誤,可是怎麼看憑證都很正常,該怎麼解決?

[Linux] 如何能知道我是什麼時候安裝系統的?

linux想知道什麼時候裝系統的?什麼時候建置的?不必憑記憶。