php写入文件乱码
发布时间: 2023-01-26 22:53:10
‘壹’ php设置成utf-8还是乱码了怎么办
有时后php代码里边设置了“header("Content-type:
text/html;
charset=utf-8");”不一定会管用,因为有时文件本身格式就是错误的,你先把代码复制到一个txt文件里边,然后用代码工具对php文件进行转码成utf-8格式(这时你就会发现里边的代码乱码了,由其是中文和特殊字符),再把txt里边的代码复制覆盖原来的php文件内容,然后保存即可,例如用Notepad++
工具
可以对文件本身进行转码
‘贰’ 大神 php文件打开是乱码怎么回事儿 谢谢
你应该将文件的头部截图出来大家才好判断,这种乱码有几种情况。
你的文件编码不对,比如是gbk编码,但是你的编辑器打开的时候是使用utf8编码,不同编辑器设置方式不同,比如:sublime、Dreamweaver、phpstorm……可以网络相应的问题,如何修改编辑器编码
你的文件被加密了,这种情况也需要根据具体的加密方式才知道怎么解密,而且如果加密规则太复杂,是需要收费解密的,这种也需要找专门的技术人员
‘叁’ PHP写入到文本文件乱码
php处理中文编码老是有问题,这是编码的问题,可以将txt文件另存为UTF-8的编码再处理;
参考如下:
functionfile_utf8($filepath){
$f_contents=file_get_contents($filepath);
$encoding=mb_detect_encoding($f_contents,array('GB2312','GBK','UTF-16','UCS-2','UTF-8','BIG5','ASCII'));
$content_u="";
$handle=fopen($filepath,"r");
if($handle){
while(!feof($handle)){
$buffer=fgets($handle);
if($encoding!=false){
if(mb_detect_encoding($buffer)!='UTF-8'){
$buffer=iconv($encoding,'UTF-8',$buffer);
}
}else{
$buffer=mb_convert_encoding($buffer,'UTF-8','Unicode');
}
$content_u.=$buffer;
}
fclose($handle);
return$info=array('status'=>1,'message'=>$content_u);
}else{
return$info=array('status'=>0,'message'=>'打开文件失败');
}
}
‘肆’ 我使用eclipse for PHP导入一个文件,结果导入之后变成乱码了,我在导入之前已经把
这个问题可能是你的php文件编码不是utf-8导致的。如果原来的文件是gbk编码的,导入以后是utf-8自然会导致乱码。
热点内容
