PHP 方法记录
半路由于公司需求得修改一些PHP程序。。。。最近正在修改 其中遇到一些问题。。也写了几个方法因此记录下
1 function cutWord($str){
2 $ret_str = "";
3 $middle_str = "";
4 $words = array();
5 while($str != ""){
6 if(strlen($str) == 3 && ord(substr($str,0,1))>160){
7 if($middler_str != ""){
8 $middle_str .= $str;
9 }else{$middle_str = $str;}
10 $ret_str .= "cn";
11 $ret_str .= $middle_str."cn";
12 }
13 else if(strlen($str) == 1){
14 if($middler_str != ""){
15 $middle_str .= $str;
16 }
17 $ret_str .= "en";
18 $ret_str .= $middle_str."en";
19 }
20 else{
21 if(ord(substr($str,0,1))<160){
22 $middle_str .= substr($str,0,1);
23 if(ord(substr($str,1,1))>160){
24 //如果下一个是中文字符
25 $ret_str .= "en";
26 $ret_str .= $middle_str."en";
27 $middle_str = ""//清空中间变量
28 }
29 $str = substr($str,1);
30 }
31 else{
32 $middle_str .= substr($str,0,3);
33 if(ord(substr($str,3,1))>160){
34 //如果下一个是英文字符
35 $ret_str .= "cn";
36 $ret_str .= $middle_str."cn";
37 $middle_str = ""//清空中间变量
38 }
39 $str = substr($str,3);
40 }}
41 }
42 return $ret_str
43 }
3 $middle_str = "";
4 $words = array();
5 while($str != ""){
6 if(strlen($str) == 3 && ord(substr($str,0,1))>160){
7 if($middler_str != ""){
8 $middle_str .= $str;
9 }else{$middle_str = $str;}
10 $ret_str .= "cn";
11 $ret_str .= $middle_str."cn";
12 }
13 else if(strlen($str) == 1){
14 if($middler_str != ""){
15 $middle_str .= $str;
16 }
else{$middle_str = $str;}
17 $ret_str .= "en";
18 $ret_str .= $middle_str."en";
19 }
20 else{
21 if(ord(substr($str,0,1))<160){
22 $middle_str .= substr($str,0,1);
23 if(ord(substr($str,1,1))>160){
24 //如果下一个是中文字符
25 $ret_str .= "en";
26 $ret_str .= $middle_str."en";
27 $middle_str = ""//清空中间变量
28 }
29 $str = substr($str,1);
30 }
31 else{
32 $middle_str .= substr($str,0,3);
33 if(ord(substr($str,3,1))>160){
34 //如果下一个是英文字符
35 $ret_str .= "cn";
36 $ret_str .= $middle_str."cn";
37 $middle_str = ""//清空中间变量
38 }
39 $str = substr($str,3);
40 }}
41 }
42 return $ret_str
43 }
它的作用把一个字符串中的中英文区分开来。。。 注意:以上代码可能有错误。。。因为公司不能直接代码到外网。。所以大家参考的时候注意下。。。。