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、代码

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

 <?php
$arr=array(
5=>'user5',
2=>'user2',
4=>'user4',
6=>'user6',
1=>'user100',
7=>'USER7'
); natcasesort($arr); echo "<pre>";
print_r($arr);
echo "</pre>";
?>

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

 <?php
$arr=array('name'=>1,2,3);
$arr2=array('name'=>4,5,6); $arr3=array_merge($arr,$arr2); echo "<pre>";
print_r($arr3);
echo "</pre>";
?>
 

php课程 5-18 数组排序和合并拆分函数有哪些的更多相关文章

  1. 斯坦福NLP课程 | 第18讲 - 句法分析与树形递归神经网络

    作者:韩信子@ShowMeAI,路遥@ShowMeAI,奇异果@ShowMeAI 教程地址:http://www.showmeai.tech/tutorials/36 本文地址:http://www. ...

  2. [C1] C1FlexGrid 行列增删&单元格合并拆分

    上一篇中实现了 C1FlexGrid的撤销还原功能,这篇是要仿 Excel 做一个行列删除以及单元格的自由合并拆分,楼主怕在原工程里复杂的说不清道不明,所以干脆提取出来做了一个 Demo 来说明实现过 ...

  3. 黄聪:phpexcel中文教程-设置表格字体颜色背景样式、数据格式、对齐方式、添加图片、批注、文字块、合并拆分单元格、单元格密码保护

    首先到phpexcel官网上下载最新的phpexcel类,下周解压缩一个classes文件夹,里面包含了PHPExcel.php和PHPExcel的文件夹,这个类文件和文件夹是我们需要的,把class ...

  4. phpexcel中文教程-设置表格字体颜色背景样式、数据格式、对齐方式、添加图片、批注、文字块、合并拆分单元格、单元格密码保护

    转:http://www.cnblogs.com/huangcong/p/3687665.html 首先到phpexcel官网上下载最新的phpexcel类,下周解压缩一个classes文件夹,里面包 ...

  5. PHPExcel-设置表格字体颜色背景样式、数据格式、对齐方式、添加图片、批注、文字块、合并拆分单元格、单元格密码保护

    首先到phpexcel官网上下载最新的phpexcel类,下周解压缩一个classes文件夹,里面包含了PHPExcel.php和PHPExcel的文件夹,这个类文件和文件夹是我们需要的,把class ...

  6. Oracle多行记录合并自定义函数

    在oracle数据库中,进行字段合并,可以使用wm_concat(column)函数,但是在这种方法不被Oracle所推荐,因为WMSYS用户用于Workspace Manager,其函数对象可能因版 ...

  7. php课程 5-19 php数据结构函数和常用函数有哪些

    php课程 5-19 php数据结构函数和常用函数有哪些 一.总结 一句话总结: 1.php数据结构函数有哪些(四个)? • array_pop();从最后弹出一个值,返回弹出值• array_pus ...

  8. 小实例---关于input宽度自适应以及多个input框合并拆分

    前两个月,公司内部需要开发关于大数据方面的辅助工具语料分词系统,在这个项目中遇到以下几个主要问题,在此分享~ 一.input宽度根据内定文本宽度自适应 背景:项目需求中,前台展示,需要从后台获取的.t ...

  9. php 操作数组 (合并,拆分,追加,查找,删除等)

    1. 合并数组 array_merge()函数将数组合并到一起,返回一个联合的数组.所得到的数组以第一个输入数组参数开始,按后面数组参数出现的顺序依次迫加.其形式为: array array_merg ...

随机推荐

  1. Android自定义系统分享面板

    在Android中实现分享有一种比较方便的方式,调用系统的分享面板来分享我们的应用.最基本的实现如下: public Intent getShareIntent(){ Intent intent = ...

  2. ftp实现图片上传,文件也类似

    本来用得是easyui得控件 点击按钮实现选择图片得 ,但是老板非得要双击图片框实现上传代码....做个简单得记录 前端代码: 首先,<form>表单要加上 enctype="m ...

  3. 14.ZooKeeper Java API 使用样例

    转自:http://www.aboutyun.com/thread-7332-1-1.html package com.taobao.taokeeper.research.sample; import ...

  4. scrapy-爬取斗图

    scrapy-爬取斗图代码   <一> 开局三连杀    1.创建run的文件  

  5. BlobTracker

    Blob分析介绍 分类: CV相关2012-11-04 11:25 1929人阅读 评论(5) 收藏 举报 Blob翻译成中文,是“一滴”,“一抹”,“一团”,“弄脏”,“弄错”的意思.在计算机视觉中 ...

  6. 00087_File

    1.IO概述 (1)要把数据持久化存储,就需要把内存中的数据存储到内存以外的其他持久化设备(硬盘.光盘.U盘等)上: (2)当需要把内存中的数据存储到持久化设备上这个动作称为输出(写)Output操作 ...

  7. 为什么要学习Numerical Analysis

    前几日我发了一个帖子,预告自己要研究一下  Numerical Analysis 非常多人问我为啥,我统一回答为AI-----人工智能 我在和教授聊天的时候,忽然到了语言发展上 我说:老S啊(和我关系 ...

  8. 百度2019校招Web前端工程师笔试卷(9月14日)

    8月27日晚,在实习公司加班.当时正在调试页面,偶然打开百度首页console,发现彩蛋,于是投了简历. 9月14日晚,七点-九点,在公司笔试. 笔试题型(有出入): 一.单选20道 1.难度不难,考 ...

  9. JMeter--聚合报告之 90% Line 正确理解

    90% Line 参数正确的含义: 虽然,我的上面理解有一定的道理,显然它(90% 用户的响应时间)是错误的.那看看JMeter 官网是怎么说的? 90% Line - 90% of the samp ...

  10. DE1-SOC调试linux应用程序

    参考http://www.alterawiki.com/wiki/SoCEDSGettingStarted#Getting_Started_with_Linux_Application_Debuggi ...