【jq的get传参数在utf-8中乱码问题的解决php版_PHP教程】教程文章相关的互联网学习教程文章

分享PHP代码UTF-8和Unicode编码互转(多语言)

PHP UTF-8和Unicode编码互转/** * //将内容进行UNICODE编码* utf-8 转unicode* * @param string $name* @return string*/function utf8_unicode($name){ $name = iconv(UTF-8, UCS-2, $name); $len = strlen($name); $str = ; for ($i = 0; $i < $len - 1; $i = $i + 2){ $c = $name[$i]; $c2 = $name[$i + 1]; if (ord($c) > 0){ //两个字节的文字 $str .= \u.base_convert(ord($c), 10, 16).str_pad(base_convert(o...

GB2312phpsmarty截取中文字符乱码问题?gb2312/utf-8

一般网站页面的显示都不可避免的会涉及子字符串的截取,这个时候truncate就派上用场了,但是它只适合英文用户,对与中文用户来说,使用 truncate会出现乱码,而且对于中文英文混合串来说,截取同样个数的字符串,实际显示长度上却不同,视觉上会显得参差不齐,影像美观。这是因为一个中文的长度大致相当与两个英文的长度。此外,truncate也不能同时兼容GB2312, UTF-8等编码。 改良的smartTruncate: 文件名:modifier.smartTruncat...

楷体gb2312PHP截取字符串函数整理支持gb2312和utf-8

1、截取GB2312字符用的函数 PHP代码 代码如下://截取中文字符串 function mysubstr($str, $start, $len) { $tmpstr = ""; $strlen = $start + $len; for($i = 0; $i if(ord(substr($str, $i, 1)) > 0xa0) { $tmpstr .= substr($str, $i, 2); $i++; } else $tmpstr .= substr($str, $i, 1); } return $tmpstr; } ?> 2. 截取utf8编码的多字节字符串PHP代码 代码如下://截取utf8字符串 function utf8Substr($str, $from, $len) { re...

PHP的UTF-8中文转拼音处理类

转载自:http://blog.csdn.net/hzbigdog/article/details/37817135/*** PHP 汉字转拼音* @author Jerryli(hzjerry@gmail.com)* @version V0.20140715* @package SPFW.core.lib.final* @global SEA_PHP_FW_VAR_ENV* @example* echo CUtf8_PY::encode('阿里巴巴科技有限公司'); //编码为拼音首字母* echo CUtf8_PY::encode('阿里巴巴科技有限公司', 'all'); //编码为全拼音*/classCUtf8_PY {/*** 拼音字符转换图* @var array*/priv...

PHP插入headercontent-type:text/html;charset="utf-8和error_reporting

1.headerPHP文件插入header("Content-type: text/html; charset=utf-8");相当于页面里面的1:E_ERROR 致命的运行错误。错误无法恢复,暂停执行脚本。 2:E_WARNING 运行时警告(非致命性错误)。非致命的运行错误,脚本执行不会停止。 4:E_PARSE 编译时解析错误。解析错误只由分析器产生。 8:E_NOTICE 运行时提醒(这些经常是你代码中的bug引起的,也可能是有意的行为造成的。) 16:E_CORE_ERROR PHP启动时初始化过程中的致命错误。...

PHP中检测文件是否为UTF-8编码的函数

// // 测试文本是否是utf8编码 // // 返回值: // 1 - 有BOM头的内容 // 2 - 纯utf8的内容 // 3 - 较可能是utf8的内容 // 4 - 较不可能是utf8的内容 // function utf8_check($text) {$utf8_bom = chr(0xEF).chr(0xBB).chr(0xBF);// BOM头检查if (strstr($text, $utf8_bom) === 0)return 1;$text_len = strlen($text);// UTF-8是一种变长字节编码方式。对于某一个字符的UTF-8编码,如果只有一个字节则其最高二进制位为0;...

字符串切分utf-8(支持汉语、日文、韩文等,高效、)

因为mb_substr、mb_strlen太过低效,故而采用了此段代码。 非原创,主要原理是根据UTF-8的编码特点 0xxxxxxx 110xxxxx 10xxxxxx 1110xxxx 10xxxxxx 10xxxxxx 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx 111110xx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 1111110x 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 来获取字符边界,从而确定一个字所占字节数,并处理成数组。 方便对字符操作比较频繁的用户,此函数效率比mb_sub...

php不使用iconv库进行gb2312与utf-8编码转换的函数

//对照表的使用$filename = "gb2utf8.txt";$fp = fopen($filename,"r");while(! feof($fp)) {list($gb,$utf8) = fgetcsv($fp,10);$charset[$gb] = $utf8;}fclose($fp);//以上读取对照表到数组备用/** gb2312到utf-8 **/function gb2utf8($text, &$charset) {//提取文本中的成分,汉字为一个元素,连续的非汉字为一个元素preg_match_all("/(?:[\x80-\xff].)|[\x01-\x7f]+/",$text,$tmp);$tmp = $tmp[0];//分离出汉字$ar = array_int...

UTF-8与GBK编码下PHP获取字符串长度的函数

/** 统计字符串长度*@param $str 被统计字符串*/function sstrlen($str) {global $charset;$n = 0; $p = 0; $c = ”;$len = strlen($str);if($charset == ‘utf-8′) {for($i = 0; $i $c = ord($str{$i});if($c > 252) {$p = 5;} elseif($c > 248) {$p = 4;} elseif($c > 240) {$p = 3;} elseif($c > 224) {$p = 2;} elseif($c > 192) {$p = 1;} else {$p = 0;}$i+=$p;$n++;}} else {for($i = 0; $i $c = ord($str{$i});if($c > 12...

2万字库PHP汉字转拼音(UTF-8)

2万字库PHP汉字转拼音(UTF-8)

php实现utf-8和GB2312编码相互转换

/******************************************** * * 函数名:get_utf8_to_gb($value) * 作 用:utf8编码字符串转换成gb2312编码 * 作 者:刘先忠 * 日 期:2011-11-09 * ********************************************/function get_utf8_to_gb($value){ $value_1= $value; $value_2 = @iconv( "utf-8", "gb2312//IGNORE",$value_1);//使用@抵制错误,如果转换字符串中,某一个字符在目标字符集里没有对应字符...

有关UTF-8编码中BOM的检测与删除

Shell: #!/bin/sh: No such file or directory PHP: Warning: Cannot modify header information – headers already sent在详细讨论UTF-8编码中BOM的检测与删除问题前,不妨先通过一个例子热热身:shell> curl -s http://phone.jbxue.com/ | head -1 | sed -n l \357\273\277//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">\r$如上所示,前三个字节分别是357、273、277,这就是八进制的BOM。shell> curl -s ht...

解决php截取utf-8中文字符串时乱码的问题

/** @php截取utf-8中文字符串乱码 @link http://bbs.it-home.org*/function utf8_substr($str,$len){  for($i=0;$i  {    $temp_str=substr($str,0,1);    if(ord($temp_str) > 127){      $i++;    if($i      $new_str[]=substr($str,0,3);      $str=substr($str,3);      }    }else {    $new_str[]=substr($str,0,1);    $str=substr($str,1);    }  }  retu...

php截取中文字符(utf-8格式)的函数

/** @UTF-8中文字符截断程序 @http://bbs.it-home.org*/$str = "321这是测试字符串";$str1 = "()()";echo subUTF8str($str,0,3)."";echo subUTF8str($str,0,4)."";echo subUTF8str($str1,0,4)."";echo subUTF8str($str1,0,10)."";function subUTF8str($str,$start=0,$length=80){$cur_len = 0; //人理解的字符串长度$all_len = strlen($str); //机器理解字符串长度if($length > $all_len){return $str;}for($i = 0;$i {if($cur_l...

有关匹配中文的正则(GB2312/utf-8)介绍

本文介绍下,用于匹配中文的正则(GB2312与utf-8格式),有需要的朋友,参考下吧。以下列出了当前在 PCRE 中可能使用的修正符。 括号中是这些修正符的内部 PCRE 名。修正符中的空格和换行被忽略,其它字符会导致错误。 希望本文,可以帮助大家更深入地理解与掌握正则表达式的相关概念。 i (PCRE_CASELESS) 如果设定此修正符,模式中的字符将同时匹配大小写字母。 m(PCRE_MULTILINE) 默认情况下,PCRE 将目标字符串作为单一的一“行...