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

yipeiwu_com7年前PHP代码库

本文实例讲述了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字符串(string)用法总结》、《PHP数组(Array)操作技巧大全》、《PHP基本语法入门教程》、《PHP运算与运算符用法总结》、《php面向对象程序设计入门教程》、《PHP网络编程技巧总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总

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

相关文章

php str_replace的替换漏洞

定义和用法 str_replace() 函数使用一个字符串替换字符串中的另一些字符。 语法 str_replace(find,replace,string,count)参数 描述 fin...

PHP中危险的file_put_contents函数详解

前言 最近在EIS上遇到一道文件上传的题,发现过滤了<,这样基本很多姿势都无效了,想了很久没做出来这题,赛后才知道是利用数组来绕过, 这里分析了下原理,话不多说了,来一起看看详细的...

PHP 自定义可控的字符串加密解密方法函数

以下这个是我在项目中常用的字符串加密解密函数,供大家参考有个好处是每次调用加密后的数据都是不一样的但都能解密回原来的数据。/**  * @param $string&n...

如何解决PHP无法实现多线程的问题

有没有办法在PHP中实现多线程呢?假设你正在写一个基于多台服务器的PHP应用,理想的情况时同时向多台服务器发送请求,而不是一台接一台。可以实现吗?当有人想要实现并发功能时,他们通常会想到...

php上传图片之时间戳命名(保存路径)

html代码: <div id="images" style="width:250px;height:120px;background:#fff;border:1px soli...