zoukankan      html  css  js  c++  java
  • php课程 5-18 数组排序和合并拆分函数有哪些

    php课程  5-18   数组排序和合并拆分函数有哪些

    一、总结

    一句话总结:分类来记。这些函数自己都可以写,费点时间而已。

    1、array_combine()和array_merge()的区别是什么?

    array_combine()是键值合并,array_merge()是数组合并

     5 $arr3=array_merge($arr,$arr2);

    2、数组常用排序函数有哪些(7个)?

    • sort();
    按值把数组值进行排序,升序,不保留key
    • rsort();
    按值把数组值进行排序,降序,不保留key
    • asort();
    按值把数组值进行排序,升序,保留key
    • arsort();
    按值把数组值进行排序,降序,保留key
    • ksort();
    按键把数组值进行排序,升序,保留key
    • krsort();
    按键把数组值进行排序,降序,保留key
    • natsort();
    按自然数排序
    • natcasesort();
    忽略大小写的自然数排序
    • array_multisort();
    用一个数组对另外一个数组进行排序

    3、sort()和asort()的区别是什么?

    都是按值排序,asort()会带上键

    4、数组常用排序函数中三个特殊但是实用的函数时哪三个?

    • natsort();
    按自然数排序
    • natcasesort();
    忽略大小写的自然数排序
    • array_multisort();
    用一个数组对另外一个数组进行排序

    11 natcasesort($arr);

    5、数组拆分、合并、分解与结合函数有哪6个(3组)?

    • array_slice();
    截取一段值
    • array_splice();
    截取一段值,保留一段值
    • array_combine();
    合并,一个是key,一个是value
    • array_merge();  并集
    合并,键值相同,后面覆盖前面
    • implode();
    把数组连接成字符串       
    • explode();
    把字符串分解成数组

    6、array_slice()和array_splice()的区别是什么?

    都是从数组中截取函数,array_splice()截取的数据原数据不在了

    7、数组排序之后原数组会变化么?

    php中的排序数组都会改变原数组,所以排序好的结果不是返回值,而是被排序的数组本身。

    二、数组排序和合并拆分函数有哪些

    1、相关知识

    4.数组的排序函数(都会改变原数组)
    • sort();
    按值把数组值进行排序,升序,不保留key
    • rsort();
    按值把数组值进行排序,降序,不保留key
    • asort();
    按值把数组值进行排序,升序,保留key
    • arsort();
    按值把数组值进行排序,降序,保留key
    • ksort();
    按键把数组值进行排序,升序,保留key
    • krsort();
    按键把数组值进行排序,降序,保留key
    • natsort();
    按自然数排序
    • natcasesort();
    忽略大小写的自然数排序
    • array_multisort();
    用一个数组对另外一个数组进行排序

    5.拆分、合并、分解与结合函数
    • array_slice();
    截取一段值
    • array_splice();
    截取一段值,保留一段值
    • array_combine();
    合并,一个是key,一个是value
    • array_merge();  并集
    合并,键值相同,后面覆盖前面
    • implode();
    把数组连接成字符串       
    • explode();
    把字符串分解成数组

    2、代码

    按自然数忽略大小写升序排序

     1 <?php 
     2 $arr=array(
     3     5=>'user5',
     4     2=>'user2',
     5     4=>'user4',
     6     6=>'user6',
     7     1=>'user100',
     8     7=>'USER7'
     9 );
    10 
    11 natcasesort($arr);
    12 
    13 echo "<pre>";
    14 print_r($arr);
    15 echo "</pre>";
    16  ?>

    array_merge值合并但相同字符串键名会覆盖

     1 <?php 
     2 $arr=array('name'=>1,2,3);
     3 $arr2=array('name'=>4,5,6);
     4 
     5 $arr3=array_merge($arr,$arr2);
     6 
     7 echo "<pre>";
     8 print_r($arr3);
     9 echo "</pre>";
    10 ?>
     
  • 相关阅读:
    W3C代码标准规范
    我们为什么要遵循W3C标准规范
    WEB标准:标准定义、好处、名词解释、常用术语、命名习惯、浏览器兼容、代码书写规范
    ThinkPHP框架下,给jq动态添加的标签添加点击事件移除标签
    ThinkPHP框架下,jq实现在div中添加标签并且div的大小会随之变化
    Windows下spark1.6.0本地环境搭建
    Mysql中使用SQL计算两个日期时间差值
    jquery正则表达式验证:手机号码
    jquery正则表达式验证:验证邮箱格式是否正确
    jquery正则表达式验证:整数12位,小数钱12位小数点后2位
  • 原文地址:https://www.cnblogs.com/Renyi-Fan/p/9227159.html
Copyright © 2011-2022 走看看