你们中的任何人都知道构建字符串模板的好方法,可以用后面的相应数据填充吗?这是一个通信系统。
所以期望的输出看起来像:
蝙蝠侠你好,你好吗?您的朋友超人,猫女和蜘蛛侠已经在使用我们的服务。您想尝试一下我们的服务吗?
实际数据应从数据库中提取,因此需要采用一般处理方法:
你好{用户名},你好吗? {If:HasFriendsWhoUseTheService}您的朋友{ListFriends}已经在使用我们的服务。{EndIf}您是否想尝试我们的服务?
这意味着如果用户没有使用系统的朋友,则不应打印中间句子。
我刚刚构建了一个小型系统,能够恰当地替换{username}或{ListFriends}等字段,但后来我认识到,还应该有一些if语句。
有人知道图书馆或类似的东西支持这些东西吗?也许还需要考虑更多,以获得最大的灵活性。
答案 0 :(得分:1)
如果模板仅由受信任的人编辑,那么您应该只使用PHP本身:
Hello <?php echo $Username;?>, how are you doing?
<?php if ($ListFriends) : ?>
Your friends <?php echo $ListFriends;?> are already using our service.
<?php endif; ?>
Would you like to give our service a try?
答案 1 :(得分:0)
构建自定义解析器。您可以在此链接中查看BBCode解析器作为示例http://forrst.com/posts/Simple_PHP_BBCode_Parser-N0z据我所知,您的字符串模板将适用于{Username}
,{if:Condition}Content{/endif}
等标记,这与标记相同BBCode做。
答案 2 :(得分:0)
感谢您提供有用的答案!
我与相关经理进行了交谈,并对要求进行了改进,以使其更容易。所以我最终只提供了像{Username}或{Address}这样的简单字段,因为没有简单的方法来创建通用系统。
非常感谢您的帮助!