function string2words($s,$return_string = true,$encode64 = true)
{
$re = '';
//匹配汉字
if (preg_match_all("/([x{4e00}-x{9fff}]{2,})/u",$s,$ms))
{
foreach($ms[0] as $w)
{
//关键部分:分词
$l = strlen($w)/3;
for($i=0;$i<$l;$i++)
{
$wi = substr($w,$i*3,6);
if (strlen($wi) > 3)
{
$re .= ($encode64)?' '.str_replace(',','@',base64_encode($wi)):' '.$wi;
}
}
}
}
//匹配数字
if (preg_match_all("/(d+[.]?d+)/",$s,$ms))
{
foreach($ms[0] as $wi)
{
if(strlen($wi) >= 2)
{
$re .= ($encode64)?' '.str_replace(',','@',base64_encode($wi)):' '.$wi;
}
}
$s = preg_replace("/(d+[.]?d+)/",' ',$s);
}
//去掉所有双字节字符
$s = preg_replace("/([^x{00}-x{ff}]+)/u",' ',$s);
$re = $s.' '.$re;
if (!$return_string)
{
$re = preg_replace("/([^d])([,.-?n])([^d])/",'1ドル 3ドル',$re);
$re = trim(preg_replace("/[s]{2,}/",' ',$re));
$arr = explode(' ',$re);
$re = array();
foreach($arr as $a)
{
if (strlen($a) >= 2) $re[] = $a;
}
return $re;
}
else
{
$re = trim(preg_replace("/[s,.]{2,}/",' ',$re));
return $re;
}
} 原文地址:http://www.jb100.net/html/content-22-400-1.html
ThinkPHP 是一个免费开源的,快速、简单的面向对象的 轻量级PHP开发框架 ,创立于2006年初,遵循Apache2开源协议发布,是为了敏捷WEB应用开发和简化企业应用开发而诞生的。ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性。并且拥有众多的原创功能和特性,在社区团队的积极参与下,在易用性、扩展性和性能方面不断优化和改进,已经成长为国内最领先和最具影响力的WEB应用开发框架,众多的典型案例确保可以稳定用于商业以及门户级的开发。