小弟是PHP新手,想求一段代码,就是一旦信息内容里有符合条件的文本,就给该文本加上指定的超链接。
实例为:这是列表网内容页的代码。预置了关键词“iphone”和“诺基亚”的超链接,求大大指点!!! 

解决方案 »

  1.   

    帮你大概分析下
    如果你给的是通用格式的话,那么需要至少2个参数才能完成这项操作
    参数1:预置关键字组,假定为1维数组
    参数2:超链接子页面组,假定也是1维数组,并且与参数1一一对应
    定义:
    $areg1 = array('iPhone','诺基亚');
    $areg2 = array('iphone','nojiya');
    然后便是已有的内容,这里我为了方便书写简化了一些东西
    $cont = "苹果iPhone 4<br>苹果iPhone 4G<br>诺基亚C7<br>摩托罗拉";
    之后便是替换,说到替换那就不得不想到正则。后面的代码我一起给出吧(省略了错误处理并简化了输出内容)
    foreach($areg1 as $key=>$a1){
    $cont = preg_replace("/($a1)/iU","<a href=\"".$areg2[$key]."\">\\1</a>",$cont);
    }
    echo $cont;
    或许还有更好的方法,不过我暂时只能想到这个
      

  2.   

    就是说完整的代码应该是:
    $areg1 = array('iPhone','诺基亚');
    $areg2 = array('iphone','nojiya');
    $cont = "苹果iPhone 4<br>苹果iPhone 4G<br>诺基亚C7<br>摩托罗拉";
    foreach($areg1 as $key=>$a1){
    $cont = preg_replace("/($a1)/iU","<a href=\"".$areg2[$key]."\">\\1</a>",$cont);
    }
    echo $cont;是这样的吗?