php字符串操作常见问题小结


Posted in PHP onOctober 11, 2016

本文实例讲述了php字符串操作常见问题。分享给大家供大家参考,具体如下:

记得当初学习php的时候听的一句觉得很牛X的话就是:一切程序都是字符串,所谓编程只是让数据像水一样在各个代码页面间流来流去。等我目前工作中也确实发现数据格式是个很难的问题,涉及到数据的组装、拆分和再拼装。

之所以要提到Json,因为使用ajax时,经常会涉及到程序与Js之间的数据交互。由于Js不认识PHP中的数组,PHP也不认识JS中的数组或对象。这时候Json这种自由的格式就可以很好的解决了这个问题。

它的格式如下:

例如:

{"username": "Eric","age":23,"sex": "man"}

我们强大的PHP已经为此提供了内置函数:json_encode() 和 json_decode()。

很容易理解,json_encode()就是将PHP数组转换成Json。相反,json_decode()就是将Json转换成PHP数组。

例如:

$array = array("name" => "Eric","age" => 23);
echo json_encode($array);

程序将打印出 :

{"name":"Eric","age":23}
$array = array(0 => "Eric", 1 => 23);
echo json_encode($array);

程序将打印出 :

["Eric",23]

除去这种比较自由的格式之外,比较普遍的是字符串与数组之间的互换与拼接:

1、将字符串转换成数组:

explode(separate,string)

示例:

$str = "Hello world It's a beautiful day";
explode(" ",$str);//以空格为分界点

返回:

array([0]=>"Hello",[1]=>"world",[2]=>"It's",[3]=>"a",[4]=>"beautiful",[5]=>"day")

将已序列化的字符串返回到原数组形式。

2、将数组转换成字符串:

implode(separate,array)  //explode的反向操作,separate默认为空字符

示例:

$array = ('hello','world','!');
implode(" ",$array);

返回:

"hello world !"

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

PHP 相关文章推荐
PHP实现MySQL更新记录的代码
Jun 07 PHP
php URL验证正则表达式
Jul 19 PHP
php中使用preg_replace函数匹配图片并加上链接的方法
Feb 06 PHP
php5.5中类级别的常量使用介绍
Oct 02 PHP
基于PHP实现假装商品限时抢购繁忙的效果
Oct 16 PHP
一个非常实用的php文件上传类
Jul 04 PHP
php识别翻转iphone拍摄的颠倒图片
May 17 PHP
PHP观察者模式示例【Laravel框架中有用到】
Jun 15 PHP
解决thinkPHP 5 nginx 部署时,只跳转首页的问题
Oct 16 PHP
Laravel 实现添加多语言提示信息
Oct 25 PHP
为你的 Laravel 验证器加上多验证场景的实现
Apr 07 PHP
PHP连接MSSQL数据库案例,PHPWAMP多个PHP版本连接SQL Server数据库
Apr 16 PHP
PHPCMS2008广告模板SQL注入漏洞修复
Oct 11 #PHP
php基于curl实现随机ip地址抓取内容的方法
Oct 11 #PHP
php 获取文件行数的方法总结
Oct 11 #PHP
PHP中文字符串截断无乱码解决方法
Oct 10 #PHP
PHP获取用户客户端真实IP的解决方案
Oct 10 #PHP
php表单加入Token防止重复提交的方法分析
Oct 10 #PHP
Laravel5中防止XSS跨站攻击的方法
Oct 10 #PHP
You might like
ThinkPHP让分页保持搜索状态的方法
2014/07/02 PHP
Laravel中使用自己编写类库的3种方法
2015/02/10 PHP
CentOS下PHP安装Oracle扩展
2015/02/15 PHP
PHP设计模式之迭代器模式Iterator实例分析【对象行为型】
2020/04/26 PHP
Gird事件机制初级读本
2007/03/10 Javascript
jQuery源码分析-04 选择器-Sizzle-工作原理分析
2011/11/14 Javascript
javascript数组去重3种方法的性能测试与比较
2013/03/26 Javascript
Node.js实现批量去除BOM文件头
2014/12/20 Javascript
再谈JavaScript线程
2015/07/10 Javascript
vue实现ajax滚动下拉加载,同时具有loading效果(推荐)
2017/01/11 Javascript
angular+ionic 的app上拉加载更新数据实现方法
2017/01/16 Javascript
javascript深拷贝的原理与实现方法分析
2017/04/10 Javascript
JS实现队列的先进先出功能示例
2017/05/10 Javascript
微信小程序picker组件简单用法示例【附demo源码下载】
2017/12/05 Javascript
图文详解vue框架安装步骤
2019/02/12 Javascript
D3.js的基础部分之数组的处理数组的排序和求值(v3版本)
2019/05/09 Javascript
Element实现表格分页数据选择+全选所有完善批量操作
2019/06/07 Javascript
layui表单提交到后台自动封装到实体类的方法
2019/09/12 Javascript
JavaScript Array对象使用方法解析
2019/09/24 Javascript
javascript实现简单打字游戏
2019/10/29 Javascript
selenium+java中用js来完成日期的修改
2019/10/31 Javascript
详解vue beforeEach 死循环问题解决方法
2020/02/25 Javascript
[32:17]完美世界DOTA2联赛循环赛LBZS vs Forest第二场 10月30日
2020/10/31 DOTA
python基础知识小结之集合
2015/11/25 Python
使用Mixin设计模式进行Python编程的方法讲解
2016/06/21 Python
浅谈Python生成器generator之next和send的运行流程(详解)
2017/05/08 Python
Python图像的增强处理操作示例【基于ImageEnhance类】
2019/01/03 Python
Django model 中设置联合约束和联合索引的方法
2019/08/06 Python
python生成器用法实例详解
2019/11/22 Python
Python数据可视化:饼状图的实例讲解
2019/12/07 Python
Python中and和or如何使用
2020/05/28 Python
美国宠物美容和宠物用品购物网站:Cherrybrook
2018/12/07 全球购物
安全生产目标管理责任书
2014/07/25 职场文书
小学运动会入场词
2015/07/18 职场文书
python3读取文件指定行的三种方法
2021/05/24 Python
Python测试框架pytest高阶用法全面详解
2022/06/01 Python