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

yipeiwu_com6年前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默认设置中的Notice警告的方法

PHP的默认设置是显示Notice警告提示,这会造成页面无法正常显示出来。你有没定义的变量直接使用了。不过编PHP的时候本来就不像C++那么严格,编程的时候经常还会利用这个特点。 在把自...

PHP多线程之内部多线程实例分析

本文实例分析了PHP多线程之内部多线程用法。分享给大家供大家参考。具体如下: 复制代码 代码如下:<?php class Http_MultiRequest {  ...

php去除二维数组的重复项方法

php中去一维数组的重复项可以通过php内置函数array_unique(),但是php的array_unique函数对多维数组并不适用,怎么才能去除二维数组中的重复项呢? 以下...

php数组函数序列之array_keys() - 获取数组键名

array_keys() 定义和用法 array_keys() 函数返回包含数组中所有键名的一个新数组。 如果提供了第二个参数,则只返回键值为该值的键名。 如果 strict 参数指定为...

php设计模式 Facade(外观模式)

php设计模式 Facade(外观模式)

模式定义:外观模式(Facade Pattern):外部与一个子系统的通信必须通过一个统一的外观对象进行,为子系统中的一组接口提供一个一致的界面,外观模式定义了一个高层接口,这个接口使得...