찾다
php教程php手册php 数组编码转换方法 关于fgetcsv中文乱码问题

php 数组编码转换方法 关于fgetcsv中文乱码问题

Jun 06, 2016 am 09:53 AM
php중국어 왜곡 문자암호오픈 소스정렬코딩프로그램 작성프로그래밍 언어소프트웨어 개발

在处理csv文件导入时关于fgetcsv获取中文乱码问题.. 因为项目采用utf-8编码, 而导入的csv文件是以ansi编码保存的  输出中文乱码问题.

下面为找到的解决方法原文. 

引用:  http://www.pignut.net/352

 

今天在处理csv文件导入的时候,通过fgetcsv方法返回的数组中,值为汉字的部分全是乱码。我分析是因为项目的文件全部以utf-8编码,而
导入的csv文件是以ansi编码保存的,对于中文操作系统环境对应的应该就是gbk编码了,通过手动更改浏览器字符编码为gbk,乱码的情况消失了。于
是决定对数组进行编码转换。

系统默认的编码转换函数iconv只能接受字符串参数,当然我们可以通过array_walk……等数组方法利用回调函数递归的来进行处理,也可以
直接读取数组单元处理后再填入数组。但是感觉数组如果很庞大或者维数过多,性能上的比较就不得不考虑了。正因为iconv函数只能接受字符串参数,于是想
到将数组先利用函数serialize序列化,通过iconv转换编码后再用unserialize反序列化回来。但不知道为什么转换编码后无法反序列化
回来,找个时间单独实验一下,清楚的朋友给我留个言也好。

于是求助其他Variable handling
函数。在这里var_export函数可以输出或返回一个变量的字符串表示。此函数返回关于传递给该函数的变量的结构信息,它和 var_dump()
类似,不同的是其返回的表示是合法的 PHP 代码。可以通过将函数的第二个参数设置为 TRUE,从而返回变量的表示。下面就利用这一特性将数组转化为字符串然后再iconv接着再用eval函数将其还原为数组。这次结果正确显示了。

<span style="color: rgb(102, 102, 153);">$data</span> = <span style="color: rgb(51, 102, 255);">eval</span>('return '.<span style="color: rgb(51, 102, 255);">iconv</span>('gbk','utf-8',<span style="color: rgb(51, 102, 255);">var_export</span>($data,true)).';');

$data为需要转换编码的数组。

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
4 몇 주 전By尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

DVWA

DVWA

DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는

Atom Editor Mac 버전 다운로드

Atom Editor Mac 버전 다운로드

가장 인기 있는 오픈 소스 편집기

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

SublimeText3 영어 버전

SublimeText3 영어 버전

권장 사항: Win 버전, 코드 프롬프트 지원!

ZendStudio 13.5.1 맥

ZendStudio 13.5.1 맥

강력한 PHP 통합 개발 환경