很多站长朋友们都不太清楚php判断gbk编码,今天小编就来给大家整理php判断gbk编码,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 php 怎样判断字符串是哪种编码 2、 用PHP如何判断一个文件的编码 3、 PHP判断文件编码(XML文件中带CDATA)UTF-8判断成GBK怎么解决 4、 JavaScript PHP 通过URLEncode字串判断其编码是UTF-8还是GBK php 怎样判断字符串是哪种编码php中有个函数可以用来检查当前字符串的编码类型
mb_detect_encoding($str,array('ASSCII',''GB2312','UTF-8));
PHP用MBString库的函数
$e=mb_detect_encoding($text, array('UTF-8', 'GBK'));
switch($e){
case 'UTF-8' : //如果是utf8编码
break;
case ‘GBK’: //如果是gbk编码
break
}
用PHP如何判断一个文件的编码文件a.txt,用PHP如何判断它的编码是GBK还是UTF-8呢?
1,重新认识一下此问题,当时版主回复的时候我就觉得mb函数里一定有这样的功能,但今日研究了mb库,并没有这样的功能。用mb_detect_encoding总是不准确。
echo mb_detect_encoding(file_get_contents('a.txt'));
2,我在PHP的在线文档中找了一个方法,可以解决你的问题,需要自己编写一个函数来实现。
具体代码如下:
function isUTF8($str)
{
if ($str === mb_convert_encoding(mb_convert_encoding($str, "UTF-32", "UTF-8"), "UTF-8", "UTF-32"))
{
return true;
}
else
{
return false;
}
}
$content = file_get_contents("a.txt");
echo isUTF8($content);
3,经测试,在编码种类不多的情况下,2方法成功率还是挺高的。
function ChickC($str)
{
$array = array('ASCII','GBK','UTF-8');
foreach ($array as $value)
{
if ($str === mb_convert_encoding(mb_convert_encoding($str, "UTF-32", $value), $value, "UTF-32"))
return $value;
}
return false;
}
PHP判断文件编码(XML文件中带CDATA)UTF-8判断成GBK怎么解决设置PHP文件编码: header("Content-type: text/html; charset=utf-8");
如果你要设置成GBK,这样写header("Content-type: text/html; charset=GBK");
PHP字符串转码:
(1)$encode = mb_detect_encoding($str, array("ASCII",'UTF-8',"GB2312","GBK",'BIG5')); //获取字符串编码格式
(2)$str_encode = mb_convert_encoding($str, 'GBK', $encode);//将字符串转换成GBK编码
希望对你有帮助
JavaScript PHP 通过URLEncode字串判断其编码是UTF-8还是GBKJavaScript PHP 通过URLEncode字串判断其编码是UTF-8还是GBK
例如给出字串:
%B4%BA
或
%E6%98%A5
如何判断应该是使用UTF-8还是GBK进行URLDecode?
思路1 通用方法:
假定它是 GBK 的编码 ,则将其转换成 utf-8 然后再转换回来后与没有转换之前是相等的。这样假设成立,也就是GBK编码。
思路2
iconv转换编码时 如果转换遇到错误 会抛出异常 扑捉异常即可
<?php
//测试url编码到底是gbk 还是utf8编码
$url="%B4%BA";
check_type1($url);
check_type2($url);
function check_type1($url){
//这是思路1
$url=urldecode($url);
$temp1=iconv("GBK","UTF-8",$url);
$temp2=iconv("UTF-8","GBK",$temp1);
//var_dump($temp1,$temp2);
if($temp2==$url)
echo 'it is gbk';
else
echo 'it is utf8';
}
function check_type2($url){
//这是思路2
$url=urldecode($url);
@trigger_error('error', E_USER_NOTICE);
$temp1=@iconv("GBK","UTF-8",$url);
$error=error_get_last();
if($error['message']!='error')
echo "it is utf8";
else
echo 'it is gbk';
}
?>
关于php判断gbk编码的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于php判断gbk编码 php判断中文长度的详细内容...