如何把重复的附号换成一个 我用dedecms程序标题有时会产生------ 有多少不一定,一次出现几次也不一定,想让它不管出现几根横线都只换成一个横线出现,这个怎么实现哟。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 如果不设置文件是这种fdioher--wehofdo----df.html我想生成静态文件后变成这种fdioher-wehofdo-df.html 如何把它加到这段代码里function SpGetPinyin($str,$ishead=0,$isclose=1){ global $pinyins; $restr = ""; $str = trim($str); $slen = strlen($str); if($slen<2) return $str; if(count($pinyins)==0){ $fp = fopen(dirname(__FILE__)."/../data/pinyin.db","r"); while(!feof($fp)){ $line = trim(fgets($fp)); $pinyins[$line[0].$line[1]] = substr($line,3,strlen($line)-3); } fclose($fp); } for($i=0;$i<$slen;$i++){ if(ord($str[$i])>0x80) { $c = $str[$i].$str[$i+1]; $i++; if(isset($pinyins[$c])){ if($ishead==0) $restr .= $pinyins[$c]; else $restr .= $pinyins[$c][0]; }else $restr .= "-"; }else if( eregi("[a-z0-9]",$str[$i]) ){ $restr .= $str[$i]; } else{ $restr .= "-"; } } if($isclose==0) unset($pinyins); return $restr;}请高手帮帮忙啊 $restr = preg_replace("/\-+/","-",$str);return $restr;我把它放在这里原来生成这种fdioher--wehofdo----df.html现在生成这种fdioher wehofdo df.html,更怪原有几个分隔符现在就有几个空格 $str="fdioher--wehofdo----df.htm--l--aaa";$restr = preg_replace("/\-+/","-",$str);var_dump($restr); //结果:string(28) "fdioher-wehofdo-df.htm-l-aaa" 帮忙看看,偶是新手,谢谢,php 怪事,静态变量不能赋值! Fatal error: Call to undefined method Redis::object()redisadmin/view.php ip地址如何转换为IPCDBL php读取csv文件乱码 给个解析吗? 文件写入后再读出,数据不一致 CSS FF兼容 网页内嵌入其他网站的动态功能怎么办 用sae开发微信公众号,链接sae里面的mysql总是没反应。 有公司招聘PHP程序员吗 php求助
fdioher--wehofdo----df.html
我想生成静态文件后变成这种
fdioher-wehofdo-df.html
function SpGetPinyin($str,$ishead=0,$isclose=1){
global $pinyins;
$restr = "";
$str = trim($str);
$slen = strlen($str);
if($slen<2) return $str;
if(count($pinyins)==0){
$fp = fopen(dirname(__FILE__)."/../data/pinyin.db","r");
while(!feof($fp)){
$line = trim(fgets($fp));
$pinyins[$line[0].$line[1]] = substr($line,3,strlen($line)-3);
}
fclose($fp);
}
for($i=0;$i<$slen;$i++){
if(ord($str[$i])>0x80)
{
$c = $str[$i].$str[$i+1];
$i++;
if(isset($pinyins[$c])){
if($ishead==0) $restr .= $pinyins[$c];
else $restr .= $pinyins[$c][0];
}else $restr .= "-";
}else if( eregi("[a-z0-9]",$str[$i]) ){ $restr .= $str[$i]; }
else{ $restr .= "-"; }
}
if($isclose==0) unset($pinyins);
return $restr;
}
请高手帮帮忙啊
return $restr;
我把它放在这里
原来生成这种fdioher--wehofdo----df.html
现在生成这种fdioher wehofdo df.html,更怪
原有几个分隔符现在就有几个空格
$str="fdioher--wehofdo----df.htm--l--aaa";
$restr = preg_replace("/\-+/","-",$str);
var_dump($restr); //结果:string(28) "fdioher-wehofdo-df.htm-l-aaa"