fgetcvs在linux的问题


Posted in PHP onJanuary 15, 2012

看到有人在有汉字的字符串 前加一个 ‘ 或是任意半角符号,让bug将其除掉,不过这样做太麻烦了。最后呢,找来一个模拟fgetcsv功能的函数。

function __fgetcsv(& $handle, $length = null, $d = ‘,', $e = ‘”‘) { 
$d = preg_quote($d); 
$e = preg_quote($e); 
$_line = “”; 
$eof=false; 
while ($eof != true) { 
$_line .= (empty ($length) ? fgets($handle) : fgets($handle, $length)); 
$itemcnt = preg_match_all(‘/' . $e . ‘/', $_line, $dummy); 
if ($itemcnt % 2 == 0) 
$eof = true; 
} 
$_csv_line = preg_replace(‘/(?: |[ ])?$/', $d, trim($_line)); 
$_csv_pattern = ‘/(‘ . $e . ‘[^' . $e . ']*(?:' . $e . $e . ‘[^' . $e . ']*)*' . $e . ‘|[^' . $d . ']*)' . $d . ‘/'; 
preg_match_all($_csv_pattern, $_csv_line, $_csv_matches); 
$_csv_data = $_csv_matches[1]; 
for ($_csv_i = 0; $_csv_i < count($_csv_data); $_csv_i++) { 
$_csv_data[$_csv_i] = preg_replace(‘/^' . $e . ‘(.*)' . $e . ‘$/s', ‘$1′ , $_csv_data[$_csv_i]); 
$_csv_data[$_csv_i] = str_replace($e . $e, $e, $_csv_data[$_csv_i]); 
} 
return empty ($_line) ? false : $_csv_data; 
}
PHP 相关文章推荐
php表单转换textarea换行符的方法
Sep 10 PHP
将博客园(cnblogs.com)数据导入到wordpress的代码
Jan 06 PHP
PHP判断变量是否为0的方法
Feb 08 PHP
详解PHP中strlen和mb_strlen函数的区别
Mar 07 PHP
两种设置php载入页面时编码的方法
Jul 29 PHP
微信API接口大全
Apr 15 PHP
PHP的邮件群发系统phplist配置方法详细总结
Mar 30 PHP
PHP对象相关知识总结
Apr 09 PHP
PHP接口继承及接口多继承原理与实现方法详解
Oct 18 PHP
php curl优化下载微信头像的方法总结
Sep 07 PHP
php 原生分页
Apr 01 PHP
php实例化对象的实例方法
Nov 17 PHP
PHP异步调用socket实现代码
Jan 12 #PHP
114啦源码(114la)不能生成地方房产和地方报刊问题4级页面0字节的解决方法
Jan 12 #PHP
PHP警告Cannot use a scalar value as an array的解决方法
Jan 11 #PHP
Trying to clone an uncloneable object of class Imagic的解决方法
Jan 11 #PHP
win2003服务器使用WPS的COM组件的一些问题解决方法
Jan 11 #PHP
php通过COM类调用组件的实现代码
Jan 11 #PHP
关于IIS php调用com组件的权限问题
Jan 11 #PHP
You might like
用PHP来写记数器(详细介绍)
2006/10/09 PHP
PHP分页显示制作详细讲解
2006/12/05 PHP
smarty学习笔记之常见代码段用法总结
2016/03/19 PHP
Yii净化器CHtmlPurifier用法示例(过滤不良代码)
2016/07/15 PHP
php 判断字符串编码是utf-8 或gb2312实例
2016/11/01 PHP
Nigma vs Alliance BO5 第二场2.14
2021/03/10 DOTA
jQuery 获取URL参数的插件
2010/03/04 Javascript
jquery.boxy插件的iframe扩展代码
2010/07/02 Javascript
使用Java实现简单的server/client回显功能的方法介绍
2013/05/03 Javascript
nodejs文件操作模块FS(File System)常用函数简明总结
2014/06/05 NodeJs
在JavaScript中操作时间之getUTCDate()方法的使用
2015/06/10 Javascript
深入浅析JavaScript面向对象和原型函数
2016/02/06 Javascript
JavaScript禁止用户多次提交的两种方法
2016/07/24 Javascript
详解Vue.js——60分钟组件快速入门(上篇)
2016/12/05 Javascript
用js实现before和after伪类的样式修改的示例代码
2017/09/07 Javascript
jQuery niceScroll滚动条错位问题的解决方法
2018/02/03 jQuery
JavaScript继承与多继承实例分析
2018/05/26 Javascript
angular4强制刷新视图的方法
2018/10/09 Javascript
Vue 幸运大转盘实现思路详解
2019/05/06 Javascript
python生成指定尺寸缩略图的示例
2014/05/07 Python
利用一个简单的例子窥探CPython内核的运行机制
2015/03/30 Python
python获取本机外网ip的方法
2015/04/15 Python
Python本地与全局命名空间用法实例
2015/06/16 Python
Pandas 按索引合并数据集的方法
2018/11/15 Python
Python Pandas 获取列匹配特定值的行的索引问题
2019/07/01 Python
opencv 查找连通区域 最大面积实例
2020/06/04 Python
获取CSDN文章内容并转换为markdown文本的python
2020/09/06 Python
土耳其时尚潮流在线购物网站:Trendyol
2017/10/10 全球购物
西班牙拥有最佳品牌的动物商店:Animalear.com
2018/01/05 全球购物
来自Ocado的宠物商店:Fetch
2018/07/10 全球购物
高中运动会广播稿
2014/01/21 职场文书
幼儿园中班教学反思
2014/02/10 职场文书
《最后的姿势》教学反思
2014/02/27 职场文书
2014年售后服务工作总结
2014/11/18 职场文书
《揠苗助长》教学反思
2016/02/20 职场文书
Django+Nginx+uWSGI 定时任务的实现方法
2022/01/22 Python