导航:首页 > 编程语言 > phpget乱码问题

phpget乱码问题

发布时间:2023-05-24 13:23:40

⑴ 对于php中file_get_contents 中文乱码有什么解决方案吗

解决代码逻辑如橘睁下
$content = '';
$text = file_get_contents($file);
//$encodType = mb_detect_encoding($text);
define('UTF32_BIG_ENDIAN_BOM', chr(0x00) . chr(0x00) . chr(0xFE) . chr(0xFF));
define('UTF32_LITTLE_ENDIAN_BOM', chr(0xFF) . chr(0xFE) . chr(0x00) . chr(0x00));
define('UTF16_BIG_ENDIAN_BOM', chr(0xFE) . chr(0xFF));
define('UTF16_LITTLE_ENDIAN_BOM', chr(0xFF) . chr(0xFE));
define('UTF8_BOM', chr(0xEF) . chr(0xBB) . chr(0xBF));
$first2 = substr($text, 0, 2);
$first3 = substr($text, 0, 3);
$first4 = substr($text, 0, 3);
$encodType = "";
if (UTF8_BOM == $first3) {
$encodType = 'UTF-8 BOM';
} else if (UTF32_BIG_ENDIAN_BOM == $first4) {
$encodType = 'UTF-32BE';
} else if (UTF32_LITTLE_ENDIAN_BOM == $first4) {
$encodType = 'UTF-32LE';
} else if (UTF16_BIG_ENDIAN_BOM == $first2) {
$encodType = 'UTF-16BE';
} else if (UTF16_LITTLE_ENDIAN_BOM == $first2) {
$encodType = 'UTF-16LE';
}
//下面的判断主要谈肢还是判断ANSI编码的·
if ('' == $encodType) {
//即默认创建的txt文本-ANSI编码的
$content = iconv("GBK", "UTF-8", $text);
} else if ('UTF-8 BOM' == $encodType) {
//本来就是UTF-8不用转换
$content = $text;
} else {
//其他的格式都转化为UTF-8就可以了
$content = iconv($encodType, "UTF-8", $text);
} (BY三人含伍世行慕课)

⑵ PHP mysql 如何将从数据中读入的中文乱码转换成中文字符

要解决乱码首先需要知道出现乱码的原因:
一、PHP+MySQL出现中文乱码的原因。
1. MYSQL数据库的编码是utf8,与PHP网页的编码格式不一致,就会造成MYSQL中的中文乱码。
2. 使用MYSQL中创建表、或者选择字段时设置的类型不是utf8,而网页编码不是utf8,也可能造成MYSQL中文乱码.
3. PHP页面的字符集与数据库的编码不一致。
4. PHP连接MYSQL数据库,操作是设定的语句指定的编码和页面编码,PHP页面编码不一致。
5. 用户提交的HTML页面编码,和显示数据的页面编码不一致 ,就肯定会造成PHP页面乱码.
二、解决中文乱码:
1. 网页编码设置。一般在HTML代码中的文件头<html>中加入属性:
<meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″>
保证,网页是"utf-8"编码。
2. PHP代码设置。在php代码的开始部分加入以下代码:
header(”Content-type: text/html;charset=utf-8″);
且要求保存的文件编码方式是utf-8,这样就保证了该文件也是utf-8编码。
3. 数据库中表的字段中存储中文的部分,要设置为utf8_general_ci类型。
4.PHP在连接数据库操作时,要设置操作的字段类型为utf8,设置方法如下:
mysql_connect(’localhost’,'user’,'password’);mysql_select_db(’db’);mysql_query(”set names utf8;”); //**设置字符集***

⑶ php file_get_contents乱码问题

用mb_convert_encoding( $string, 'UTF-8', 'UTF-8,GBK,GB2312,BIG5' ); 转换编槐键尘码铅禅,iconv对中文亮陪支持不怎么好

⑷ jquery ajax get中文请求乱码问题(php)

function js_unescape($str)
{
$ret = '';
$len = strlen($str);

for ($i = 0; $i < $len; $i++)
{
if ($str[$i] == '%' && $str[$i+1] == 'u')
{
$val = hexdec(substr($str, $i+2, 4));

if ($val < 0x7f) $ret .= chr($val);
else if($val < 0x800) $ret .= chr(0xc0|($val>>6)).chr(0x80|($val&0x3f));
else $ret .= chr(0xe0|($val>>12)).chr(0x80|(($val>>6)&0x3f)).chr(0x80|($val&0x3f));

$i += 5;
}
else if ($str[$i] == '%')
{
$ret .= urldecode(substr($str, $i, 3));
$i += 2;
}
else $ret .= $str[$i];
}
return $ret;
}

上面这个函数是接收ajax传过来的参数是调用
使用方法:js_unescape($_GET['通过ajax传过来的参数']);

function phpescape($str)
{
$sublen=strlen($str);
$retrunString="";
for ($i=0;$i<$sublen;$i++)
{
if(ord($str[$i])>=127)
{
$tmpString=bin2hex(iconv("utf-8","ucs-2",substr($str,$i,2)));
//$tmpString=substr($tmpString,2,2).substr($tmpString,0,2);linux下打开这项
$retrunString.="%u".$tmpString;
$i++;
} else {
$retrunString.="%".dechex(ord($str[$i]));
}
}
return $retrunString;
}

上面这个函数是返回给调用层进行的编码操作
使用方法:phpescape('你所要输出的内容');

⑸ 万网虚拟主机php 脚本GET传递变量打印后是乱码.

<td width="61%" height="25"><a href="1234.php?leibie=中国万网">添加</a></td>
改成
<td width="61%"码携 height="25"><孙信a href="迟凯伏1234.php?leibie=<?=urlencode("中国万网")?>">添加</a></td>

你需要进行url编码,然后再解码才行呢个

⑹ PHP中文乱码问题

  1. 乱码一般都是编码不一致,如果页面是php直接输出字符串,最好在前面加上声明
    header("Content-type:text/html;charset=utf-8");
    如果是html网页代码,页面meta标签就行:
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

  2. 注意php页面是否是utf-8格式,一般代码编辑器会显示,如下:

⑺ PHP 接收GET中文乱码问题

哎,又是乱码问题,我不多说,直接上代码

if(!preg_match('/^.*$/u',$_REQUEST['word'])){
$username=iconv('GB2312','UTF-8',$_REQUEST['word']);
}

上面的代码就是判断传来的是数据类型是不是UTF-8编码,如果不是就转成转UTF-8编码,当然只支持GB2313的,如果传递过来的编码是big5的话也还是出现乱码,但是一般浏览器中人用的大部默认是GB2312或是UTF8的,先用着再说

⑻ php file_get_contents 薯仔视频出乱码

你用的这个函数由于使用的是高层传输协议,很容易超时,即使能够判断也因为重试次数太多而无法使用。至于curl函数,则不是为这种应用设计的。最好是使用fsocket函数,不会存在你说的问题。

⑼ 用php的file_get_content函数读取图片为什么得到的字符串是乱码

读出来是乱码是正常的,毕竟图片是二进制文件,直接写入文件就可以了,你输出的时候声明是图片的头就没问题了

阅读全文

与phpget乱码问题相关的资料

热点内容
正版我的世界如何进服务器地址 浏览:660
云文档怎样加密 浏览:294
ip协议的远程登录命令 浏览:286
阿里云服务器可以帮别人备案吗 浏览:391
脏数据java 浏览:290
游戏解压怎么设置 浏览:782
会声会影如何压缩视频 浏览:57
阅读app小说怎么转换成txt 浏览:65
c语言编程数字变时间 浏览:655
迷你编程第五天初级宝箱怎么弄 浏览:839
刺激体验服如何更新服务器 浏览:934
怎么把照片做成新的文件夹 浏览:466
安卓手机没有声音均衡器怎么办 浏览:506
吃鸡国际服为什么会服务器匆忙 浏览:248
微信中如何打开定位服务器 浏览:203
java并发编程书籍 浏览:280
android601源码 浏览:788
程序员离职了还能干嘛 浏览:156
少林功法pdf 浏览:471
安卓80版本小游戏怎么玩 浏览:632