PHP数组的处理方法

1、将字符串分割成数组:$array=explode(separator,$string):

separator:分隔符,

$string:分割的字符串;

2、将数组组合成字符串:$string=implode(glue,$array):

glue:胶合符,

$array:数组;

3、统计数组的长度:count():

count函数有两个参数:
0(或COUNT_NORMAL)为默认,不检测多维数组(数组中的数组);
1(或COUNT_RECURSIVE)为检测多维数组

<?php
$arr=array(
                 0=>array('title' => '苹果', 'viewnum' => 青的, 'content' => 'pingguo'),
                 1=>array('title' => '柚子', 'viewnum' => 红心, 'content' => 'youzi')
               );

 

echo '不统计多维数组:'.count($arr,0);//count($arr,COUNT_NORMAL)
echo "<br/>";
echo '统计多维数组:'.count($arr,1);//count($arr,COUNT_RECURSIVE)
?>

4、合并两个数组:array_merge():

$a[];

$b[];

$c[] = array_merge( $a , $b );

5、数组排序:

  • sort() - 以升序对数组排序
  • rsort() - 以降序对数组排序
  • asort() - 根据值,以升序对关联数组进行排序
  • ksort() - 根据键,以升序对关联数组进行排序
  • arsort() - 根据值,以降序对关联数组进行排序
  • krsort() - 根据键,以降序对关联数组进行排序

          array_multisort() 函数对多个数组或多维数组进行排序。

<?php

$a1=array(1,30,15,7,25);

$a2=array(4,30,20,41,66);

$num=array_merge($a1,$a2);

array_multisort($num,SORT_DESC,SORT_NUMERIC);

print_r($num);

?>
6、数组与json格式的转换:
json_encode():将数组转换为json对象格式,追加参数:
JSON_UNESCAPED_UNICODE对中文进行编码

json_decode():将json对象转换为php对象格式;

json_decode( $obj , true ):将json对象转换为数组;

$bad_json = "{ 'bar': 'baz' }";
$bad_json = '{ bar: "baz" }';
$bad_json = '{ "bar": "baz", }';

 

 对这三个字符串执行json_decode()都将返回null,并且报错。

 

第一个的错误是,json的分隔符(delimiter)只允许使用双引号,不能使用单引号。第二个的错误是,json名值对的"名"(冒号左边的部分),任何情况下都必须使用双引号。第三个的错误是,最后一个值之后不能添加逗号(trailing comma)。

 

另外,json只能用来表示对象(object)和数组(array),如果对一个字符串或数值使用json_decode(),将会返回null。

7、数组的交集,差集,并集

$inter_arr = array_intersect($m_arr,$m_card):数组的交集;
$diff_arr = array_diff($m_card,$m_arr):数组的差集;

数组的差集只能获取第一个数组中别的数组中没有的,如想获取所有数组的差集结合array_merge();

$diff_arr = array_diff($m_card,$m_arr);

$diff_arr2 = array_diff($m_arr,$m_card);

$arr = array_merge($diff_arr,$diff_arr2);

 

$merge = array_merge():数组的并集;

8、替换数组的值:

array_replace();

 

转载于:https://www.cnblogs.com/xhnewbie/p/7754216.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值