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

yipeiwu_com6年前PHP代码库

本文实例讲述了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数组(Array)操作技巧大全》、《PHP基本语法入门教程》、《php面向对象程序设计入门教程》、《PHP网络编程技巧总结》及《php字符串(string)用法总结

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

相关文章

php可变长参数处理函数详解

本文实例讲述了php可变长参数处理函数。分享给大家供大家参考,具体如下: 与C++一样,PHP中也可以对含有可变参数的函数进行处理,道理都一样,需要函数来专门处理参数列表。PHP中提供了...

深入理解PHP原理之Session Gc的一个小概率Notice

如果在ubuntu/Debian下, 采用apt安装的PHP, 那么在使用Session的时候, 就可能会有小概率遇到这个提示. 复制代码 代码如下: PHP Notice: sessi...

Windows下安装Memcached的步骤说明

(其实在Windows下安装还是比较简单的) 源码包准备: 1,memcached 1.2.1 for Win32 binaries 这个是 Win32 服务器端的 memcached...

PHP 截取字符串函数整理(支持gb2312和utf-8)

1、截取GB2312字符用的函数 PHP代码 复制代码 代码如下: <?php //截取中文字符串 function mysubstr($str, $start, $len) {...

PHP实现可自定义样式的分页类

本文实例为大家分享了PHP实现可自定义样式的分页类,供大家参考,具体内容如下 <?php //namespace Component; /** * 2016-3-...