Smarty获取以strpos作为开始和strlen作为结束的变量的子字符串

2022-04-07 00:00:00 php smarty smarty2

我在Smarty中格式化变量时遇到问题。我想知道做这件事最好的方法是什么。基本上我有一个字符串"ABC|DEFGH"我想让SMARTY得到"DEFGH"的子字符串我该怎么做?

{$var|substr:strpos:"|":strlen}

不起作用


解决方案

无需在php中重新设置var,并使用内置的函数包装即可解决此问题。

假设:$var="ABC|DEFGH";

{assign var="bar_at" value=$var|strpos:"|"}
<li>{$var}</li>
<li>{$var|substr:0:$bar_at}</li>
<li>{$var|substr:$bar_at+1}</li>

这将打印:

  • ABC|DEFGH
  • ABC
  • DEFGH
  • 相关文章