【问题标题】:php change specific characters to html tagsphp将特定字符更改为html标签
【发布时间】:2011-12-20 16:30:33
【问题描述】:

我的数据库中存储了一些文本数据,我希望它以特定方式显示:我按照维基百科标准存储数据,例如:

==title==
some ''data''

我希望将这些数据转换为<b><h2><i> 等。 是否有任何函数/解析器可以轻松实现这一目标?

【问题讨论】:

  • 你想像 Markdown 一样解析它吗?
  • @JoshStrange:这个 MediaWiki 的文本标记,它不是 Markdown。
  • 不知道markdown,我也去看看,谢谢

标签: php html database parsing mediawiki


【解决方案1】:

有许多用于解析和呈现 MediaWiki 标记的库,包括一些用 PHP 编写的库。见http://www.mediawiki.org/wiki/Alternative_parsers

【讨论】:

  • +1 用于提供正确的解决方案,而不是其他人的解决方案。
  • 谢谢!这正是我想要的。
【解决方案2】:

PHP 的str_replace($search, $replace, $subject) 函数可以将数组作为参数,并将$subject 中$search 的每个元素替换为$replace 的相应元素。 见http://php.net/manual/en/function.str-replace.php

【讨论】:

  • 首先,我在寻找已经定义好的东西。此外,相同的字符可以转换为不同的字符。例如,第一个 == 将被翻译成

    ,第二个将被翻译成

  • -1 用于提供在示例案例中甚至不起作用的解决方案。例如,==title== 应更改为 <h2>title</h2>,而不是 <h2>title<h2></h2>title</h2>,因此您的解决方案将创建不正确的 HTML(至少)。
  • 即使使用 str_replace() 也有一些方法可以解决这个问题,如果这还不够,preg_replace() 可以实现这一目标,甚至更多。
  • 别这样。比尔的回答是解决这个问题的正确方法,您的解决方案甚至无法按照要求工作。
  • Bill 的解决方案绝对是正确的,只是在编辑之前(至少对我而言)并不是很明显,他只是想处理 MediaWiki 样式的标记。
猜你喜欢
  • 2016-06-22
  • 1970-01-01
  • 2013-08-14
  • 2019-02-16
  • 1970-01-01
  • 1970-01-01
  • 2017-07-08
  • 2023-04-09
  • 1970-01-01
相关资源
最近更新 更多