PHP自定义标记语言解析器

时间:2016-04-01 12:06:24

标签: php html markup

我正在制作一个网站,我想在PHP中制作自定义标记类型语言。我希望代码被[]包围。现在,我正在考虑这个,就像任何人一样,我可以这样做:

function formatMarkup($markup = ''){
    $markup = str_replace('[color=blue]', '<span style="color: blue">', $markup);
    return $markup
}

即使这可能有效,如果它会像explode()那样做,但从每个[开始到每个]结束,那么它会更加正确。如果我发现这将是很好的。感谢您的时间和精力。

修改 我决定使用preg_split()。它似乎很好,但是我无法获得正则表达式。 Here is my code

编辑#2: 我已完成大部分正则表达式,但阵列中没有多余的额外键。我该如何修理它们? Here is my new code

1 个答案:

答案 0 :(得分:0)

我制作了标记语言。我用了

$split = preg_split("/(\[|\])/", $markup);

获取个人“标签”并使用

foreach($split as $k => $v){
        if(strlen($v) < 1){
            continue;
        }

通过每个人文盲,并检查该值是否为空。然后,在那之后,我将完成所有检查,并将代码块解析在一起,并在线后重新构造文本。