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连接SQLServer2005 的问题解决方法
Jul 19 PHP
利用PHP扩展vld查看PHP opcode操作步骤
Mar 04 PHP
浅析php中如何在有限的内存中读取大文件
Jul 02 PHP
浅析php fwrite写入txt文件的时候用 \r\n不能换行的问题
Aug 06 PHP
php使用smtp发送支持附件的邮件示例
Apr 13 PHP
php实现singleton()单例模式实例
Nov 06 PHP
PHP调用Linux命令权限不足问题解决方法
Feb 07 PHP
PHP实现的字符串匹配算法示例【sunday算法】
Dec 19 PHP
PHP PDOStatement::closeCursor讲解
Jan 30 PHP
php模式设计之观察者模式应用实例分析
Sep 25 PHP
PHP的cookie与session原理及用法详解
Sep 27 PHP
Thinkphp 框架基础之源码获取、环境要求与目录结构分析
Apr 27 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
PHP中实现进程间通讯
2006/10/09 PHP
php XPath对XML文件查找及修改实现代码
2011/07/27 PHP
Zend Framework入门教程之Zend_Db数据库操作详解
2016/12/08 PHP
thinkPHP5.1框架中Request类四种调用方式示例
2019/08/03 PHP
CutePsWheel javascript libary 控制输入文本框为可使用滚轮控制的js库
2010/02/07 Javascript
jquery showModelDialog的使用方法示例详解
2013/11/19 Javascript
jQuery表格插件datatables用法总结
2014/09/05 Javascript
推荐5 个常用的JavaScript调试技巧
2015/01/08 Javascript
javascript实现漂亮的拖动层,窗口拖拽特效
2015/04/24 Javascript
AngularJS学习笔记之ng-options指令
2015/06/16 Javascript
z-blog SyntaxHighlighter 长代码无法换行解决办法(基于jquery)
2015/11/18 Javascript
jQuery height()、innerHeight()、outerHeight()函数的区别详解
2016/05/23 Javascript
node.js实现快速截图
2016/08/27 Javascript
原生javascript移动端滑动banner效果
2017/03/10 Javascript
Vue.js之slot深度复制详解
2017/03/10 Javascript
在vue中获取dom元素内容的方法
2017/07/10 Javascript
vue+vux实现移动端文件上传样式
2017/07/28 Javascript
vue使用pdfjs显示PDF可复制的实现方法
2018/12/14 Javascript
vue favicon设置以及动态修改favicon的方法
2018/12/21 Javascript
Vue调用后端java接口的实例代码
2019/10/28 Javascript
Vue 路由间跳转和新开窗口的方式(query、params)
2019/12/25 Javascript
JavaScript 双向链表操作实例分析【创建、增加、查找、删除等】
2020/04/28 Javascript
python3 写一个WAV音频文件播放器的代码
2019/09/27 Python
Python Sphinx使用实例及问题解决
2020/01/17 Python
opencv 图像腐蚀和图像膨胀的实现
2020/07/07 Python
美体小铺加拿大官方网站:The Body Shop加拿大
2016/10/30 全球购物
国际鲜花速递专家:Floraqueen
2016/11/24 全球购物
采用怎样的方法保证数据的完整性
2013/12/02 面试题
软件测试笔试题
2012/10/25 面试题
物理系毕业生自荐信
2013/11/01 职场文书
大学生关于奋斗的演讲稿
2014/01/09 职场文书
质量承诺书范文
2014/03/27 职场文书
我的未来不是梦演讲稿
2014/09/02 职场文书
经典哲理警句:志不真则心不热,心不热则功不贤
2019/11/14 职场文书
Go语言基础函数基本用法及示例详解
2021/11/17 Golang
悬疑名作《朋友游戏》动画无字ED宣传片 新角色公开
2022/04/13 日漫