php str_getcsv把字符串解析为数组的实现方法


Posted in PHP onApril 05, 2017

php根据定界符把字符串解析为数组一般使用explode方法实现

例如:使用”,”为定界符解析字符串为数组

<?php
$str = '1,2,3';
$arr = explode(',', $str);
print_r($arr);
?>

输出:

Array
(
  [0] => 1
  [1] => 2
  [2] => 3
)

但对于一些较复杂的字符串,例如csv格式,使用explode不能得出想要的结果,而使用正则较麻烦。

例如:

<?php
$str = "中国,广东省,广州市,天河区,'113.329884,23.154799',1,'2016-01-01 12:00:00','1,2,3,4,5,6'";
$arr = explode(',', $str);
print_r($arr);
?>

输出:

Array
(
  [0] => 中国
  [1] => 广东省
  [2] => 广州市
  [3] => 天河区
  [4] => '113.329884
  [5] => 23.154799'
  [6] => 1
  [7] => '2016-01-01 12:00:00'
  [8] => '1
  [9] => 2
  [10] => 3
  [11] => 4
  [12] => 5
  [13] => 6'
)

实际上想得到的结果是:

Array
(
  [0] => 中国
  [1] => 广东省
  [2] => 广州市
  [3] => 天河区
  [4] => 113.329884,23.154799
  [5] => 1
  [6] => 2016-01-01 12:00:00
  [7] => 1,2,3,4,5,6
)

php提供了str_getcsv方法,可以把字符串作为csv格式来处理,这样方便解析为数组。

str_getcsv 解析csv字符串为数组

array str_getcsv ( string $input [, string $delimiter = "," [, string $enclosure = '"' [, string $escape = "\\" ]]] )

参数:

input 待解析的字符串

delimiter 设定字段界定符(仅单个字符)

enclosure 设定字段包裹字符(仅单个字符)

escape 设置转义字符(仅单个字符),默认为反斜线(\)

实例:

<?php
$str = "中国,广东省,广州市,天河区,'113.329884,23.154799',1,'2016-01-01 12:00:00','1,2,3,4,5,6'";
$arr = str_getcsv($str, ',', "'");
print_r($arr);
?>

输出:

Array
(
  [0] => 中国
  [1] => 广东省
  [2] => 广州市
  [3] => 天河区
  [4] => 113.329884,23.154799
  [5] => 1
  [6] => 2016-01-01 12:00:00
  [7] => 1,2,3,4,5,6
)

以上这篇php str_getcsv把字符串解析为数组的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
PHP伪造referer实例代码
Sep 20 PHP
抓取并下载CSS中所有图片文件的php代码
Sep 26 PHP
关于PHP内存溢出问题的解决方法
Jun 25 PHP
php使用MySQL保存session会话的方法
Jun 26 PHP
PHP实现简单汉字验证码
Jul 28 PHP
如何实现php图片等比例缩放
Jul 28 PHP
php利用gd库为图片添加水印
Nov 09 PHP
WHOOPS PHP调试库的使用
Sep 29 PHP
PHP实现打包zip并下载功能
Jun 12 PHP
Laravel定时任务的每秒执行代码
Oct 22 PHP
Laravel 手动开关 Eloquent 修改器的操作方法
Dec 30 PHP
PhpStorm 2020.3:新增开箱即用的PHP 8属性(推荐)
Oct 30 PHP
php 从指定数字中获取随机组合的简单方法(推荐)
Apr 05 #PHP
php 判断页面或图片是否经过gzip压缩的方法
Apr 05 #PHP
通过php动态传数据到highcharts
Apr 05 #PHP
PHP 二维关联数组根据其中一个字段排序(推荐)
Apr 04 #PHP
EarthLiveSharp中cloudinary的CDN图片缓存自动清理python脚本
Apr 04 #PHP
php实现用户登陆简单实例
Apr 04 #PHP
详谈phpAdmin修改密码后拒绝访问的问题
Apr 03 #PHP
You might like
GBK的页面输出JSON格式的php函数
2010/02/16 PHP
php中mysql模块部分功能的简单封装
2011/09/30 PHP
PHP用strstr()函数阻止垃圾评论(通过判断a标记)
2013/09/28 PHP
PHP中判断文件存在使用is_file还是file_exists?
2015/04/03 PHP
Thinkphp3.2.3分页使用实例解析
2016/07/28 PHP
基于php判断客户端类型
2016/10/14 PHP
PHP如何通过带尾指针的链表实现'队列'
2020/10/22 PHP
javascript cookie解码函数(兼容ff)
2008/03/17 Javascript
DOM_window对象属性之--clipboardData对象操作代码
2011/02/03 Javascript
js获取URL的参数的方法(getQueryString)示例
2013/09/29 Javascript
js+html5实现canvas绘制网页时钟的方法
2016/05/21 Javascript
canvas压缩图片转换成base64格式输出文件流
2017/03/09 Javascript
老生常谈angularjs中的$state.go
2017/04/24 Javascript
webpack搭建vue 项目的步骤
2017/12/27 Javascript
vue实现引入本地json的方法分析
2018/07/12 Javascript
vue中img src 动态加载本地json的图片路径写法
2019/04/25 Javascript
Python语言编写电脑时间自动同步小工具
2013/03/08 Python
Python生成随机数组的方法小结
2017/04/15 Python
对pandas处理json数据的方法详解
2019/02/08 Python
python的pytest框架之命令行参数详解(下)
2019/06/27 Python
用Python实现将一张图片分成9宫格的示例
2019/07/05 Python
python中pygame安装过程(超级详细)
2019/08/04 Python
pymysql 开启调试模式的实现
2019/09/24 Python
Python 可变类型和不可变类型及引用过程解析
2019/09/27 Python
详解python中eval函数的作用
2019/10/22 Python
Pytorch 实现权重初始化
2019/12/31 Python
自我鉴定200字
2013/10/28 职场文书
自动化专业毕业生自荐信
2013/11/01 职场文书
自荐信要包含哪些内容
2013/11/06 职场文书
购房委托书范本
2014/09/18 职场文书
关于工作时间玩手机的检讨书
2014/09/18 职场文书
党的群众路线教育实践活动教师自我剖析材料
2014/10/09 职场文书
社区元宵节活动总结
2015/02/06 职场文书
试用期工作表现自我评价
2015/03/06 职场文书
2019年最新版见习人员管理制度!
2019/07/08 职场文书
一文搞懂php的垃圾回收机制
2021/06/18 PHP