<?php /*str类,字符串处理类*/ class str { protected static $星期=array('天','一','二','三','四','五','六','日'); /** * 取得数字(0-6或1-7)对应的星期汉字 * 如果是0-6(用date('w')取得),0会得到“天” * 如果是1-7(用date('N')取得,7会得到“日”) * 所以可以自由选择使用“星期天”或“星期日” */ static function 星期($num) { return self::$星期[$num]; } static function 时间差($t) { if($t<60) return $t.'秒'; $t=round($t/60); if($t<60) return $t.'分钟'; $t=round($t/60); if($t<24) return $t.'小时'; $t=round($t/24); return $t.'天'; } static function 匹配汉字($str,$extra='') { $preg='/^[\x{4e00}-\x{9fa5}'.$extra.'] $/u'; return preg_match($preg,$str); } //…… }
\$[a-zA-Z_\x7F-\xFF][a-zA-Z0-9_\x7F-\xFF]*
UTF-8中文完全属于\x7F-\xFF,所以可以正常使用
GBK的某些生僻字的第二字节小于\x7F,所以GBK编码下某些汉字不能用。
所以,你不能在GBK编码的文件中调用一个用UTF-8编码的中文命名的函数或变量,除非使用魔术函数($a=mb_convert('测试函数','utf-8','gbk'); $a(10000,10086,10010);)。