PHP/Smarty删除字符后的所有内容


PHP/Smarty Remove Everything after character

我想删除下划线后的所有内容,我有这个:

{$result.searchname|escape:"htmlall"|replace:".":" "|strstr:'_':true}

到目前为止效果良好。我现在的问题是通过

|strstr:'_':true

不再显示标题中没有下划线的所有HTML标题。

http://www.smarty.net/docs/en/language.modifier.regex.replace.tpl

{'hello_world'|regex_replace:'/_.*/':''}将打印"你好"

此外,我对他们的笔记感觉很强烈,建议你在数据被分配给smarty之前进行字符串处理(如果可能的话):

尽管Smarty提供了此regex便利修饰符,但它通常最好在PHP中应用正则表达式,或者通过自定义函数或修饰符。正则表达式被视为应用程序代码,而不是表示逻辑的一部分。