Preg_replace在开头和结尾插入怪异的符号

时间:2018-09-27 05:18:40

标签: php laravel drupal preg-replace

这个preg_replace东西挣扎了数小时。 我有它在drupal制作的实时网站上工作。运行PHP 5x 我正在用运行Php 7的Laravel重新编码我的网站

我在实时站点中的工作代码是

if(isset($getPost['message_tags'])) {

    $getPost = $getPost['message_tags'];
    foreach($getPost as $tags) {

        $tagId = $tags['id'];
        tagName = $tags['name'];
        $tag = '<a href="https://www.facebook.com/'.$tagId.'" target="_blank" title="'.$tagName.'">'.$tagName.'</a>'

        $message = preg_replace("/\@\[".$tagId."\]/", $tag, $message);
    }
}

它正在遍历来自Facebook返回的图节点的消息标签(页面提及),以将诸如@ [pageId]之类的标签替换为实际链接,并且该标签在我的实时网站上正常运行...

但是在我的Laravel网站代码中,它在字符串的开头和“] 的末尾插入了 [” ),但我不知道为什么会这样发生了,已经搞了几个小时了。 只用一个单词替换了替换项,显然不是用那一行来完成的,似乎是替换模式itselv,但是我很困惑为什么它可以在我的实时网站上运行。我想这是Laravel或PHP 5-> php 7的事情。有人吗?

0 个答案:

没有答案