下面代码实现的功能是给定一个字符串时分析字符串内拼音的函数,这在分析域名是双拼还是三拼四拼时非常有用的。
具体代码如下: include('data.php'); function isPinYin($str){ global $data; $str = str_replace( strstr($str, '.'),'',$str); if(! preg_match('/^[a-zA-Z]+$/', $str) ){ return 'no'; } $pinYinCount = $runCount = 0; while (strlen($str) > 0) { $runCount ++ ; foreach ($data[ $str{0} ] as $key => $value) { $curPinYinLen = strlen($value); if( $value == substr($str,0, $curPinYinLen) ){ $pinYinCount++; $pinyin .= $value . ' '; $str = substr($str,$curPinYinLen ); break; } } if($pinYinCount < $runCount){ $str = ''; $pinYinCount = 0; } } return $pinyin; } $domain = 'pinyin.com'; echo isPinYin($domain); // pin yin $data是一个包括所有拼音组合的数组(需要自己做优化)
(责任编辑:admin) |