php作为一种比较轻便的语言现在受到很多人的喜欢,博主现在为大家整理一下PHP常用的函数及其用法。
1.数组转json(json_encode($arr))
数组转json这个在前后端交互的时候用的也是最多,后端发送json给前端,前端收到json数据后转为json对象进行一些操作。那么在PHP中数组转对象是这样子的:
$a=array("a"=>1,"b"=>2,"c"=>3); echo json_encode($a);
2.读取文件内容(file_get_contents('filename'))
有时候后台也要读取一些文档的数据,用file_put_contents("filename")方法就可以解决这个问题,得到的结果是一个字符串:
$data=file_get_contents('test1.txt');
3.切割字符串(explode(delimiter,string))
获取到的字符串有时候想要对其进行切割,这个时候explode()就发挥出它的作用了。delimiter指的是切割的标识符,string指的是要切割的字符串。最终得到的结果是数组:
$vote=explode(",",$data);
除此以外,explode方法在string参数后面还有一个参数叫limit,表示切割后得到几个数组。
- 大于 0 - 返回包含最多 limit 个元素的数组
- 小于 0 - 返回包含除了最后的 -limit 个元素以外的所有元素的数组
- 0 - 会被当做 1, 返回包含一个元素的数组
如:
$vote=explode(",",$data,0); //返回一个数组
$vote=explode(",",$data,2); //返回两个数组
$vote=explode(",",$data,-1); //返回count($vote)-1个数组
4.调试(var_dump(reference))
当你不知道你数组或者对象输出的结果为什么是这样的时候,用var_dump()这个方法会帮你解决掉心中的很多疑问。不要盲目敲代码,一个var_dump就能让你高效率的开发。var_dump里可以填数组、变量或者参数等等。输出出来的是一个完完整整的东西。比如数组会输出所有的键值对,对象会输出所有的属性和方法,非常好用,推荐大家一用。
var_dump($vote); //$vote是一个数组,输出结果为
array(3) { [0]=> string(1) "1" [1]=> string(1) "2" [2]=> string(1) "3" }
5.ascii码转值(chr($val),ord($val))
chr()函数里填入一个参数,这个参数是asc码值,返回的结果是与之对应的字符。而ord()函数的功能与它恰恰相反,返回的结果是asc码。
chr(22); ord('a');
6.重定向(header('location:url'))
php中提供一个函数实现域名重定向,那就是header,写法如下:
header('location:http://www.baidu.com');注意,location必写,不然不会网页跳转。
7.写入文件(file_put_contents('filename',$val))
file_put_contents与上面的file_get_contents类似,只不过这个是把数据写入文件。但是这种方法会覆盖原来的内容,用的时候要慎重。
file_put_contents('test1.txt',$data); //$data为一个数组
8.数组转字符串(implode(glue,pieces))
这个方法跟上面的explode方法类似,只不过是将数组变为字符串。glue指的是每个数组元素之间的分隔符,pieces指的是数组。
$data=implode(",",$vote);
9.循环遍历(foreach())
循环遍历这个在实际的开发中用的最多,有多种用法,下面为大家推荐三种比较实用的方法:
第一种:foreach($array as $value)
这种方法是遍历数组每一个元素,十分的好用。
$arr=array(1,2,3); foreach ($arr as $value){ echo $value; //结果会依次输出123 }第二种:foreach($array as &$value)
这种方法跟上面有点差别,上面的$value只是拷贝数组中的值,现在这个$value是直接用数组中的引用,利用它可以修改数组中的元素。下面用上面和这一例作比较:
第一种的例子:
<?php $arr=array(1,2,3); foreach ($arr as $value){ echo $value=$value*2," "; } echo "<br>"; var_dump($arr); ?>
得:
2 4 6
array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3) }
而第二种的例子:
<?php $arr=array(1,2,3); foreach ($arr as &$value){ echo $value=$value*2," "; } echo "<br>"; var_dump($arr); ?>
得:
2 4 6
array(3) { [0]=> int(2) [1]=> int(4) [2]=> &int(6) }
第三种:foreach($arr as $key=>$value)
这种方法可以用来打印键值,如:
$arr=array(1,2,3); foreach ($arr as $key=>$value){ echo $key; }
注意,在键值里不要加&,否则会报错。
未完待续!