php字符串操作常见问题有什么?

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程序设计有所帮助。