我一直在寻找一些方法,要么使用bbcode编码链接,要么手动将指定消息中的url转换为链接。对我来说,BBCodes只是有点老了。尽管,仍然被大量地用于诸如笑脸之类的事情。
我可能会考虑混合使用这两种功能。
可以说,任何人都可以建议他们最近使用或使用的东西来美化消息传递系统。
发布于 2011-07-15 21:12:47
至于转换链接,Codeigniter让你用url helper
auto_link()
自动将字符串中包含的URL和电子邮件地址转换为链接。示例:$string = auto_link($string);
第二个参数确定是转换URL和电子邮件,还是只转换其中之一。如果未指定参数,则默认行为为both。电子邮件链接被编码为safe_mailto(),如上所示。
至于笑脸,这也包括在内。实际上有一个smiley helper
如果您放弃并想要解析bbcode,这里有一个由Phil Sturgeon ( Codeigniter的首席开发人员)编写的帮助器:https://github.com/bcit-ci/CodeIgniter/wiki/BBCode-Helper
发布于 2011-07-16 03:13:37
如果你想在客户端使用BBCode解释,我已经写了一个extendible BBCode parser in JavaScript。
它具有所有标准的BBCode标记,但是如果您的消息传递系统需要一些新标记来进行某些类型的URL操作,那么可以很容易地添加这些标记。例如,对于smilies标签,您可以像这样扩展它:
"smiley": {
openTag: function(params,content) {
if (content === ":)") {
return "<img src='smiley.png'/>";
} else if (content === ":(") {
return "<img src='frown.png'/>";
} else {
return "";
}
},
closeTag: function(params,content) {
return "";
}
}然后BBCode会看起来像这样:
[smiley]:)[/smiley]它生成的HTML代码将如下所示:
<img src='smiley.png'/>这可能比您想要的工作更多,并且您可能不想为您的消息传递系统使用自己的自定义标记,但我想我还是提一下吧,以防万一。
https://stackoverflow.com/questions/6706548
复制相似问题