duanquan1243 2013-02-03 11:42
浏览 33
已采纳

带有file_get_contents的preg_replace

I have looked at a couple of questions here, and done a Google search but I cannot seem to find the correct way to go about doing this.

I am using this function

function replace_c($content){
    global $db;
    $replacements = $db->query("SELECT * FROM `replacements`");
    while($replace = $replacements->fetch_assoc()){
        preg_replace("/".$replace['triggers']."/i",$replace['php'], $content);
    }
    return $content;
}

and this is my call to the function

$contents = replace_c(file_get_contents("templates/" . $settings['theme'] . "/header.html"));

It doesn't give an error, it just doesn't replace the text like it should so I am not sure if the function is actually working. I did try preg_replace_callback but I don't think I fully understand how it works and was producing nothing but errors, do I have to go the callback route, or am I just missing something in my current function?

  • 写回答

3条回答 默认 最新

  • duanhuang3074 2013-02-03 11:46
    关注

    Kira,

    The preg_Replace function returns the replaced string. The $content subject you post to it will not update as a reference. So try changing the code to;

    $content = preg_replace("/".$replace['triggers']."/i",$replace['php'], $content);
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥100 set_link_state
  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号
  • ¥15 基于单片机的靶位控制系统
  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度