phpgb2312转utf8
❶ php,采集GB2312网页,怎么转成UTF8的
用iconv应该可以。
// 假设变量$contents 含有采集到的内容
$contents=iconv('gbk', 'utf-8', $contents);
❷ 求utf8与gb2312字符编码互转的php代码
function autoCharset($string, $from='gbk', $to='utf-8') {
$from = strtoupper($from) == 'UTF8' ? 'utf-8' : $from;
$to = strtoupper($to) == 'UTF8' ? 'utf-8' : $to;
if (strtoupper($from) === strtoupper($to) || empty($string) || (is_scalar($string) && !is_string($string))) {
//如果编码相同或者非字符串标量则不转换
return $string;
}
if (is_string($string)) {
if (function_exists('mb_convert_encoding')) {
return mb_convert_encoding($string, $to, $from);
} elseif (function_exists('iconv')) {
return iconv($from, $to, $string);
} else {
return $string;
}
}else {
return $string;
}
}
$str=autoCharset($str,'gb2312','utf-8');
❸ php 转码gb2312->utf8,要怎么转呢,谢谢了。
iconv
<?php
$text = "This is the Euro symbol '€'.";
echo 'Original : ', $text, PHP_EOL;
echo 'TRANSLIT : ', iconv("UTF-8", "ISO-8859-1//TRANSLIT", $text), PHP_EOL;
echo 'IGNORE : ', iconv("UTF-8", "ISO-8859-1//IGNORE", $text), PHP_EOL;
echo 'Plain : ', iconv("UTF-8", "ISO-8859-1", $text), PHP_EOL;
?>
❹ PHP 用 记事本把gb2312 转换成UTF-8后的问题
用记事本打开PHP文件进行修改吧,需要特别的耐心哦,因为许多代码都成为?了,要欢迎是非常困难的,几乎相当于重新弄一遍
❺ php实现utf-8和GB2312编码相互转换函数代码
复制代码
代码如下:
<?php
/********************************************
*
*
函数名: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);//使用@抵制错误,如果转换字符串中,某一个字符在目标字符集里没有对应字符,那么,这个字符之后的部分就被忽略掉了;即结果字符串内容不完整,此时要使用//IGNORE
$value_3
=
@iconv(
"gb2312",
"utf-8//IGNORE",$value_2);
if
(strlen($value_1)
==
strlen($value_3))
{
return
$value_2;
}else
{
return
$value_1;
}
}
/********************************************
*
*
函数名:get_gb_to_utf8($value)
*
作
用:gb2312编码字符串转换成utf8编码
*
作
者:刘先忠
*
日
期:2011-11-09
*
********************************************/
function
get_gb_to_utf8($value){
$value_1=
$value;
$value_2
=
@iconv(
"gb2312",
"utf-8//IGNORE",$value_1);
$value_3
=
@iconv(
"utf-8",
"gb2312//IGNORE",$value_2);
if
(strlen($value_1)
==
strlen($value_3))
{
return
$value_2;
}else
{
return
$value_1;
}
}
?>
❻ PHP 解决utf-8和gb2312编码转换问题
终于皇天不负有心人,答案还是让我找到了。
网上的都是这样用的
复制代码
代码如下:
$content
=
iconv("utf-8","gb2312",$content);
这样做其实也对着了,看着确实是把utf-8转化为gb2312了,但是实际运行的话,往往都是以失败告终的,原因呢?
原因实际上也很简单,因为任何的函数都是执行错误的时候,同时很不幸的是iconv();就很终于出现错误。现在给你正确的答案。
真正的答案是这样的
复制代码
代码如下:
$content
=
iconv("utf-8","gb2312//IGNORE",$content);
很简单的,只要后面加上一个//IGNORE就行,加上这个就可以是ICONV()函数忽略错误,继续执行。
同理,要像把gb2312换为utf-8只要写上$content
=
iconv("gb2312","utf-8//IGNORE",$content);就行
❼ gb2312转成utf-8 问题 [php]
gb2312转成utf-8 是从小字符集转到大字符集,基本上不会出什么问题,
iconv('GB2312', 'UTF-8', $str);
或者
mb_convert_encoding($str, 'UTF-8', 'GB2312');
❽ php gb2312转换UTF-8编码
<?php
header("Content-Type:text/html; charset=GB2312");//定义页面编码方式gb2312
echo urlencode("网络");//gb2312编码的
echo "<br>";//换行
echo urlencode(iconv('GB2312', 'UTF-8', '网络'));//utf-8编码的
echo "<br>";
echo urlencode("网络");//还是gb2312编码的
?>
规定好,页面编码后,页面编码就是统一不会再改变。
iconv 、mb_convert_encoding 这些函数改变的只是传入那一个字符串的编码。
而不是页面编码,别搞混了。
header("Content-Type:text/html; charset=GB2312");
才是规定页面编码的代码。
❾ gb2312转utf8的问题
你看下你的PHP文件本身是什么编码格式的,是不是ANSI的,另存成UTF-8的就应该可以了。