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

发布时间 - 2026-01-11 00:30:53    点击率:

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  # str  # getcsv  # php一个解析字符串排列数组的方法  # PHP 数组和字符串互相转换实现方法  # 广东省  # 广州市  # 中国  # 给大家  # 定界  # 希望能  # 这篇  # 小编  # 大家多多  # 默认为  # 想得到  # 结果是  # print_r  # gt  # arr  # Array  # csv  # style 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: iOS正则表达式验证手机号、邮箱、身份证号等  Laravel事件和监听器如何实现_Laravel Events & Listeners解耦应用的实战教程  Laravel任务队列怎么用_Laravel Queues异步处理任务提升应用性能  Laravel如何构建RESTful API_Laravel标准化API接口开发指南  Laravel广播系统如何实现实时通信_Laravel Reverb与WebSockets实战教程  韩国服务器如何优化跨境访问实现高效连接?  佐糖AI抠图怎样调整抠图精度_佐糖AI精度调整与放大细化操作【攻略】  laravel服务容器和依赖注入怎么理解_laravel服务容器与依赖注入解析  Laravel怎么进行数据库回滚_Laravel Migration数据库版本控制与回滚操作  Laravel如何记录日志_Laravel Logging系统配置与自定义日志通道  如何将凡科建站内容保存为本地文件?  Laravel Blade模板引擎语法_Laravel Blade布局继承用法  Claude怎样写约束型提示词_Claude约束提示词写法【教程】  网站制作公司哪里好做,成都网站制作公司哪家做得比较好,更正规?  Laravel怎么创建控制器Controller_Laravel路由绑定与控制器逻辑编写【指南】  Laravel如何从数据库删除数据_Laravel destroy和delete方法区别  阿里云高弹*务器配置方案|支持分布式架构与多节点部署  Laravel怎么实现前端Toast弹窗提示_Laravel Session闪存数据Flash传递给前端【方法】  如何快速搭建虚拟主机网站?新手必看指南  Laravel怎么实现模型属性转换Casting_Laravel自动将JSON字段转为数组【技巧】  javascript中闭包概念与用法深入理解  Laravel Eloquent关联是什么_Laravel模型一对一与一对多关系精讲  php后缀怎么变mp4格式错误_修改扩展名提示格式不对怎么办【技巧】  Laravel怎么集成Log日志记录_Laravel单文件与每日日志配置及自定义通道【详解】  如何在万网自助建站平台快速创建网站?  音响网站制作视频教程,隆霸音响官方网站?  JavaScript如何实现倒计时_时间函数如何精确控制  在centOS 7安装mysql 5.7的详细教程  消息称 OpenAI 正研发的神秘硬件设备或为智能笔,富士康代工  在线制作视频的网站有哪些,电脑如何制作视频短片?  Laravel怎么发送邮件_Laravel Mail类SMTP配置教程  Laravel如何集成第三方登录_Laravel Socialite实现微信QQ微博登录  Laravel的契約(Contracts)是什么_深入理解Laravel Contracts与依赖倒置  html5的keygen标签为什么废弃_替代方案说明【解答】  网站制作企业,网站的banner和导航栏是指什么?  如何在企业微信快速生成手机电脑官网?  Laravel Admin后台管理框架推荐_Laravel快速开发后台工具  Laravel如何监控和管理失败的队列任务_Laravel失败任务处理与监控  详解Android图表 MPAndroidChart折线图  湖南网站制作公司,湖南上善若水科技有限公司做什么的?  Win11摄像头无法使用怎么办_Win11相机隐私权限开启教程【详解】  Win11任务栏卡死怎么办 Windows11任务栏无反应解决方法【教程】  如何在建站之星绑定自定义域名?  网站制作软件免费下载安装,有哪些免费下载的软件网站?  如何在Windows虚拟主机上快速搭建网站?  微信小程序 require机制详解及实例代码  网站页面设计需要考虑到这些问题  如何使用 jQuery 正确渲染 Instagram 风格的标签列表  laravel怎么配置Redis作为缓存驱动_laravel Redis缓存配置教程  详解jQuery中基本的动画方法