Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 创建简单的降价类_Php_Codeigniter_Markdown - Fatal编程技术网

Php 创建简单的降价类

Php 创建简单的降价类,php,codeigniter,markdown,Php,Codeigniter,Markdown,我目前正在开发一个集成了评论系统的系统,该系统在Codeigniter上运行,所以我希望创建一个降价库,但功能非常少 我想要的功能是 自动链接 粗体*粗体* 斜体\u斜体 实际上就是这样,post数据将在进入标记类之前通过Codeigniter的XSS类运行 所以我的问题是,最好的方法是什么,我是否应该使用一个库并禁用某些功能,我是否应该从头开始构建它,如果是的话,我应该如何构建类以及我应该考虑哪些事情。我最近遇到了类似的情况,我想支持某种标记(BB、Markdown等)。事实证明,大约10

我目前正在开发一个集成了评论系统的系统,该系统在Codeigniter上运行,所以我希望创建一个降价库,但功能非常少

我想要的功能是

  • 自动链接
  • 粗体<代码>*粗体*
  • 斜体<代码>\u斜体
实际上就是这样,post数据将在进入标记类之前通过Codeigniter的XSS类运行


所以我的问题是,最好的方法是什么,我是否应该使用一个库并禁用某些功能,我是否应该从头开始构建它,如果是的话,我应该如何构建类以及我应该考虑哪些事情。

我最近遇到了类似的情况,我想支持某种标记(BB、Markdown等)。事实证明,大约100年来BBCode一直没有做过任何事情,而且为它编写正则表达式解析器(至少对于格式良好的标记而言)非常容易,所以我编写了一个非常简单的函数来实现这一点

我的版本还包括图像、代码和颜色支持以及嵌套标记(
[b][i]粗体和斜体[/i][/b][/code>)

你可以从什么开始

还是给我的那个


如果我可以建议的话,您也可以尝试作为前端。

对我来说,整合降价最简单的方法就是

  • 将markdown.php从放入我的应用程序/助手/文件夹
  • 将其重命名为markdown_helper.php
  • 用$this->load->helper('markdown')加载它
…以防万一,像我这样的人,再次偶然发现这条旧线索:)

function parseBBCode($string){
    $search = array(
        '/\[b\](.*?)\[\/b\]/',
        '/\[i\](.*?)\[\/i\]/',
        '/\[u\](.*?)\[\/u\]/',
        '/\[img\](.*?)\[\/img\]/',
        '/\[url\=(.*?)\](.*?)\[\/url\]/',
        '/\[code\](.*?)\[\/code\]/',
        '/\[color\=(.*?)\](.*?)\[\/color\]/'
    );
    $replace = array(
        '<strong>\\1</strong>',
        '<em>\\1</em>',
        '<u>\\1</u>',
        '<img src="\\1">',
        '<a href="\\1" target="_blank">\\2</a>',
        '<code>\\1</code>',
        '<span style="color:\\1;">\\2</span>'
    );
    $new = preg_replace($search, $replace, $string);
    return nl2br($new);
}