-
-
/** - * コンテンツキーワード置換
- * by bbs.it-home.org
- */
$arr=array(
- "shoes"=>"靴",
- "靴下"=>"靴下",
- "スカート"=> ;" スカート",
- "ドレス"=>"ドレス",
- );
- $str="靴下 靴下 靴下 靴下 靴下 スカート ドレス";
- $str=replacelink($str,$arr,3);
- echo $str;
$str,$arr,$maxcount=3000){
- //画像をマッチ
- preg_match_all("/(]*>)/iUs",$str,$imgs) ;
- preg_match_all( "/(.*)/iUs",$str,$links);
- //写真とリンクを置き換えます
- if($links[1]){
- foreach($ links[1] as $k=>$v){
- $str=str_replace($v,"@links_$k",$str);
- }
- }
- if($imgs[1] ){
- foreach ($imgs[1] as $k=>$v){
- $str=str_replace($v,"@imgs_$k",$str);
- }
- }
- //マッチング終了
- $str= strtr($str,$arr);
- preg_match_all("/(.*)/iUs",$str,$a);
- $a=$a [1] ;
- $c=array_count_values($a);
- if($c){
- $kk=0;
- foreach($c as $k=>$v){
- if($v){
- if($ kk<$maxcount){
- $v=$v-1;
- }
- $str=preg_replace("/".$this->replace_quote($k)."/i",str_replace("# "," ",strip_tags($k)),$str,$v);
- }
- $kk++;
- }
- }
- //写真とリンクを復元します
- if($links[1]){
- foreach($ links[1] ] as $k=>$v){
- $str=str_replace("@links_$k",$v,$str);
- }
- }
- if($imgs[1]){
- foreach ($imgs [1] as $k=>$v){
- $str=str_replace("@imgs_$k",$v,$str);
- }
- }
- return $str;
- } p>
-
function replace_quote($str){
- $str=preg_quote($str);
- $str=str_replace("/","/",$str);
- return $str;
- }< ;/p> ;
-
コードをコピー
|