php简单读取.vcf格式文件的方法示例


Posted in PHP onSeptember 02, 2017

本文实例讲述了php简单读取.vcf格式文件的方法。分享给大家供大家参考,具体如下:

/**
* 读取.vcf格式文件
* @param $filename
*/
function readCvf($filename){
 $file = fopen($filename,"r");
 while(! feof($file))
 {
   $line=fgets($file);
   $encoding = mb_detect_encoding($line, array('GB2312','GBK','UTF-16','UCS-2','UTF-8','BIG5','ASCII'));
   $content = iconv($encoding, "utf-8", $line);
   $arr = explode(":",$content) ;
   if($arr[0]=="NOTE;ENCODING=QUOTED-PRINTABLE"){
   $temp= quoted_printable_decode($arr[1]);
   $encoding = mb_detect_encoding($temp, array('GB2312','GBK','UTF-16','UCS-2','UTF-8','BIG5','ASCII'));
   $arr[1] = iconv($encoding, "utf-8", $temp);
   }
   if(count($arr)==2){
    $userInfo[$arr[0]] = $arr[1] ;
   }
 }
 fclose($file);
 return $userInfo;
}

经常遇到乱码问题:解决方法两步:

$encoding = mb_detect_encoding($line, array('GB2312','GBK','UTF-16','UCS-2','UTF-8','BIG5','ASCII'));
$content = iconv($encoding, "utf-8", $line);

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
php 进度条实现代码
Mar 10 PHP
php strnatcmp()函数的用法总结
Nov 27 PHP
那些年我们错过的魔术方法(Magic Methods)
Jan 14 PHP
PHP函数strip_tags的一个bug浅析
May 22 PHP
php中unserialize返回false的解决方法
Sep 22 PHP
ThinkPHP基于PHPExcel导入Excel文件的方法
Oct 15 PHP
Zend Framework实现多服务器共享SESSION数据的方法
Mar 22 PHP
PHP中类属性与类静态变量的访问方法示例
Jul 13 PHP
PHP文件操作实例总结
Sep 27 PHP
PHP实现的Redis多库选择功能单例类
Jul 27 PHP
php实现websocket实时消息推送
Mar 30 PHP
laravel 解决Validator使用中出现的问题
Oct 25 PHP
PHP实现简单的模板引擎功能示例
Sep 02 #PHP
PHP实现类似于C语言的文件读取及解析功能
Sep 01 #PHP
PHP设计模式之工厂模式实例总结
Sep 01 #PHP
浅谈关于PHP解决图片无损压缩的问题
Sep 01 #PHP
phpStudy配置多站点多域名和多端口的方法
Sep 01 #PHP
[原创]PHP获取数组表示的路径方法分析【数组转字符串】
Sep 01 #PHP
使用PHP连接数据库_实现用户数据的增删改查的整体操作示例
Sep 01 #PHP
You might like
多数据表共用一个页的新闻发布
2006/10/09 PHP
php中分页及SqlHelper类用法实例
2017/01/12 PHP
PHP微信分享开发详解
2017/01/14 PHP
优化JavaScript脚本的性能的几个注意事项
2006/12/22 Javascript
Extjs学习笔记之九 数据模型(上)
2010/01/11 Javascript
JavaScript 原型继承
2011/12/26 Javascript
jQuery实现页面滚动时层智能浮动定位实例探讨
2013/03/29 Javascript
jQuery实现可拖动的浮动层完整代码
2013/05/27 Javascript
js格式化货币数据实现代码
2013/09/04 Javascript
js和html5实现手机端刮刮卡抽奖效果完美兼容android/IOS
2013/11/18 Javascript
node.js中的buffer.Buffer.isEncoding方法使用说明
2014/12/14 Javascript
JavaScript实现Flash炫光波动特效
2015/05/14 Javascript
jQuery动态改变多行文本框高度的方法
2016/09/07 Javascript
JavaScript实现窗口抖动效果
2016/10/19 Javascript
jQuery Collapse1.1.0折叠插件简单使用
2017/08/28 jQuery
ubuntu编译nodejs所需的软件并安装
2017/09/12 NodeJs
vue实现手机号码抽奖上下滚动动画示例
2017/10/18 Javascript
编写React组件项目实践分析
2018/03/04 Javascript
Nodejs处理异常操作示例
2018/12/25 NodeJs
mpvue微信小程序多列选择器用法之省份城市选择的实现
2019/03/07 Javascript
layui 实现二级弹窗弹出之后 关闭一级弹窗的方法
2019/09/18 Javascript
JS深入学习之数组对象排序操作示例
2020/05/01 Javascript
vue通过过滤器实现数据格式化
2020/07/20 Javascript
[03:32]2014DOTA2西雅图邀请赛 CIS外卡赛赛前black专访
2014/07/09 DOTA
python模拟登陆Tom邮箱示例分享
2014/01/13 Python
python中查看变量内存地址的方法
2015/05/05 Python
Python安装第三方库的3种方法
2015/06/21 Python
Python装饰器入门学习教程(九步学习)
2016/01/28 Python
python 为什么说eval要慎用
2019/03/26 Python
Python如何使用函数做字典的值
2019/11/30 Python
浅谈matplotlib.pyplot与axes的关系
2020/03/06 Python
函授大专自我鉴定
2013/11/01 职场文书
资源工程专业毕业生求职信
2014/02/27 职场文书
综合素质自我评价评语
2015/03/06 职场文书
vue中 this.$set的使用详解
2021/11/17 Vue.js
vue css 相对路径导入问题级踩坑记录
2022/06/05 Vue.js