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 相关文章推荐
PHPlet在Windows下的安装
Oct 09 PHP
php合并数组array_merge函数运算符加号与的区别
Oct 31 PHP
适用于抽奖程序、随机广告的PHP概率算法实例
Apr 09 PHP
php实现遍历目录并删除指定文件中指定内容
Jan 21 PHP
PHP SPL标准库之数据结构栈(SplStack)介绍
May 12 PHP
PHP+Mysql+jQuery文件下载次数统计实例讲解
Oct 10 PHP
PHP开发中AJAX技术的简单应用
Dec 11 PHP
php使用Jpgraph创建柱状图展示年度收支表效果示例
Feb 15 PHP
PHP实现将标点符号正则替换为空格的方法
Aug 09 PHP
源码分析 Laravel 重复执行同一个队列任务的原因
Dec 25 PHP
PHP中16个高危函数整理
Sep 19 PHP
Laravel框架使用技巧之使用url()全局函数返回前一个页面的地址方法详解
Apr 06 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
怎样去阅读一份php源代码
2009/08/21 PHP
php为字符串前后添加指定数量字符的方法
2015/05/04 PHP
在php中设置session用memcache来存储的方法总结
2016/01/14 PHP
PHP中file_exists使用中遇到的问题小结
2016/04/05 PHP
PHP网站自动化配置的实现方法(必看)
2017/05/27 PHP
几个javascript操作word的参考代码
2009/10/26 Javascript
ExtJs3.0中Store添加 baseParams 的Bug
2010/03/10 Javascript
js循环改变div颜色具体方法
2013/06/25 Javascript
js淡入淡出焦点图幻灯片效果代码分享
2015/09/08 Javascript
Angular2使用jQuery的方法教程
2017/05/28 jQuery
vue获取input输入值的问题解决办法
2017/10/17 Javascript
JavaScript实现与使用发布/订阅模式详解
2019/01/19 Javascript
Vue中Table组件行内右键菜单实现方法(基于 vue + AntDesign)
2019/11/21 Javascript
jquery实现直播弹幕效果
2019/11/28 jQuery
js实现简单贪吃蛇游戏
2020/05/15 Javascript
iview实现动态表单和自定义验证时间段重叠
2021/01/10 Javascript
python paramiko模块学习分享
2017/08/23 Python
python3解析库lxml的安装与基本使用
2018/06/27 Python
Python3.5运算符操作实例详解
2019/04/25 Python
PyCharm 解决找不到新打开项目的窗口问题
2021/01/15 Python
CSS3实现渐变背景兼容问题
2020/05/06 HTML / CSS
美国一家主营日韩美妆护肤品的在线商店:iMomoko
2016/09/11 全球购物
Skyscanner波兰:廉价航班
2017/11/07 全球购物
Nike法国官方网站:Nike.com FR
2018/07/22 全球购物
中专毕业生自荐信范文
2013/11/28 职场文书
市场营销专业个人求职信范文
2013/12/14 职场文书
家佳咖啡店创业计划书
2013/12/27 职场文书
车辆安全检查制度
2014/01/12 职场文书
写求职信有什么意义
2014/02/17 职场文书
消防志愿者活动方案
2014/08/23 职场文书
四风个人对照检查材料思想汇报
2014/09/25 职场文书
河童之夏观后感
2015/06/11 职场文书
元旦联欢晚会主持词
2015/07/01 职场文书
开学第一天的感想
2015/08/10 职场文书
学生早退检讨书(范文)
2019/08/19 职场文书
上个世纪50年代的可穿戴技术:无线电帽子
2022/02/18 无线电