004——数组(四)array_search() array_change_key_case() array_chunk() array_combine() array_diff() array_diff_key() array_diff_assoc
<?php
/**
* in_array() 判断一个内容是否在数组中:
*/ /*$arr=array(1,2,3,4,5);
if (in_array('1',$arr,TRUE)){ //第三个参数进行严格判断。
echo "值存在于数组中";
}else{
echo "不存在";
}*/ /*array_search() 查找内容是否为数组的键值,存在返回键名,不存在返回假。
* */
/*$arr2=array('php','java','html','css');
echo array_search('java',$arr2);//输出:1,java的键名
var_dump(array_search('javass',$arr2));//输出:false,不存在,返回false*/ /*array_change_key_case() 更改数组键名的大小写
* */
function dump($arr){
// echo '<pre>';
print_r($arr);
}
/*$arr=array('phpKey'=>'php','javakey'=>'java','Htmlkey'=>'html','csskey'=>'css');
$arr1=array_change_key_case($arr);
dump($arr1);//输出:Array ( [phpkey] => php [javakey] => java [htmlkey] => html [csskey] => css ) 默认键名是小写 $arr2=array_change_key_case($arr,CASE_UPPER);
dump($arr2);//输出:Array ( [PHPKEY] => php [JAVAKEY] => java [HTMLKEY] => html [CSSKEY] => css )*/ /*array_chunk() 把数组进行拆分。第三个参数,可以保留原数组的键名。不然的话就会变成索引型数组
* */
/*$arr=array('phpKey'=>'php','javakey'=>'java','Htmlkey'=>'html','csskey'=>'css','mysqlKey'=>'mysql');
$arr0=array_chunk($arr,3,true);//输出:Array ( [0] => Array ( [phpKey] => php [javakey] => java [Htmlkey] => html ) [1] => Array ( [csskey] => css [mysqlKey] => mysql ) )
dump($arr0);*/ /*array_combine() 生成新数组。第一个数组的元素是键名,第二个数组的元素是值。
如果数组的元素不是一一对应,就会报错
* */
/*$arr1=array('phpKey','javakey','Htmlkey','csskey','mysqlKey');
$arr2=array('php','java','html','css','mysql');
$arr3=array_combine($arr1,$arr2);
dump($arr3);*/ /*$arr1=array('phpKey','javakey','Htmlkey','csskey','mysqlKey','c++Key');
$arr2=array('php','java','html','css','mysql');
$arr3=@array_combine($arr1,$arr2);
var_dump($arr3);//输出:false*/ /*array_diff() 返回在其他数组中不存在的键值
* */
/*$arr1=array('blog.com','bbs.blog.com','web.blog.com');
$arr2=array('sina.com','bbs.blog.com','web.blog.com');
$arr3=array_diff($arr2,$arr1);
dump($arr3);//输出:Array ( [0] => sina.com )*/ /*$arr2=array('sina.com','bbs.blog.com','web.blog.com');
$arr1=array('blog.com','bbs.blog.com','web.blog.com');
$arr3=array('sina.com');
$arr0=array_diff($arr2,$arr1,$arr3);//查找一个数组在另外一个或多个数组中是否有不存在的值,有的话,返回不同值
dump($arr0);//输出:Array ( )*/ /*array_diff_key() 返回在其他数组中不存在的键名。
键名不同的地方,返回不同的键值对。如果都一样,返回空
* */
/*$arr1=array('phpKey'=>'php','javakey'=>'java');
$arr2=array('WebphpKey'=>'php','javakey'=>'java');
$arr0=array_diff_key($arr1,$arr2);//输出:Array ( [phpKey] => php )
dump($arr0);*/ /*array_diff_assoc() 对键名和键值都会进行比较。不同的进行返回
*
* */
$arr1=array('phpKey'=>'php11111','javakey'=>'java');
$arr2=array('phpKey'=>'php','javakey'=>'java');
$arr0=array_diff_assoc($arr1,$arr2);//输出:Array ( [phpKey] => php )
dump($arr0);
004——数组(四)array_search() array_change_key_case() array_chunk() array_combine() array_diff() array_diff_key() array_diff_assoc的更多相关文章
- php 算法之切割数组,不用array_chunk(),算法之二,取数组的差值,不用array_diff()
用php写算法切割数组,不用array_chunk();算法例如以下所看到的. <?php //$array 数组 //$size 每一个数组的个数 //每一个数组元素是否默认键值 functi ...
- hiho一下123周 后缀数组四·重复旋律
后缀数组四·重复旋律4 时间限制:5000ms 单点时限:1000ms 内存限制:256MB 描述 小Hi平时的一大兴趣爱好就是演奏钢琴.我们知道一个音乐旋律被表示为长度为 N 的数构成的数列.小Hi ...
- hihocoder #1419 : 后缀数组四·重复旋律4
#1419 : 后缀数组四·重复旋律4 时间限制:5000ms 单点时限:1000ms 内存限制:256MB 描述 小Hi平时的一大兴趣爱好就是演奏钢琴.我们知道一个音乐旋律被表示为长度为 N 的数构 ...
- php中的常用数组函数(一)(比较多个数组的差集的函数们 array_diff_assoc() array_diff() array_diff_key() array_diff_ukey() array_diff_uassoc())
array_diff_assoc($arr1, $arr2, $arr3,... n); 返回:一个$arr1的副本,后续的数组中出现一个键值相同的元素,就在副本中删掉这个元素,最后返回这个副本. 如 ...
- C语言学习004:数组与指针
在C语言中,字符串实际上就是字符数组,在内存中字符串"Shatner"存储的形式是这样的
- hihocoder-1419 后缀数组四·重复旋律4 求连续重复次数最多的子串
对于重复次数,如果确定了重复子串的长度len,那重复次数k=lcp(start,start+len)/len+1.而暴力枚举start和len的复杂度是O(n^2),不能接受.而有一个规律,若我们只枚 ...
- C语言学习笔记 (004) - 数组名和数组首地址(转)
一个变量有地址,一个数组包含若干元素,每个数组元素都在内存中占用存储单元,它们都有相应的地址.指针变量既然可以指向变量,当然也可以指向数组和数组元素(把数据起始地址或某一元素的地址放到一个指针变量中) ...
- 🧚♂️全套Java教程_Java基础入门教程,零基础小白自学Java必备教程👨💻004 # 第四单元 流程控制语句上 #
一.本单元知识点概述 二.本单元目标 (Ⅰ)重点知识目标 1.if语句的格式及执行流程2.switch语句的格式及执行流程 (Ⅱ)能力目标 1.掌握if语句的格式及执行流程2.掌握switch语句的格 ...
- HiHocoder1419 : 后缀数组四·重复旋律4&[SPOJ]REPEATS:Repeats
题面 Hihocoder Vjudge Sol 题目的提示说的也非常好 我对求\(LCP(P - L + len \% l, P + len \% L)\)做补充 \(len=LCP(P, P + L ...
随机推荐
- PKU 3169 Layout(差分约束系统+Bellman Ford)
题目大意:原题链接 当排队等候喂食时,奶牛喜欢和它们的朋友站得靠近些.FJ有N(2<=N<=1000)头奶牛,编号从1到N,沿一条直线站着等候喂食.奶牛排在队伍中的顺序和它们的编号是相同的 ...
- 牛客国庆集训派对Day3 I. - Metropolis (Dijkstra变型)
题意:求一个N个点无向图中,其中p个关键点间的最短距离. 分析:比较特殊的最短路,方式类似于多源BFS,将所有关键点装入优先队列,状态中需要包含其源点的id.对每条边都要遍历,对每个节点,需要记录其确 ...
- spray-json
spray-json是一个轻量级的,简介的和高效的使用Scala实现的json 它拥有以下特征: 一个简单不可变的模型的json语言元素 一个高效的json解析器 可选择既紧凑又漂亮的json到str ...
- H5 动画:轨迹移动 | H5游戏 推金币
https://aotu.io/notes/2017/11/06/path-animation/ https://aotu.io/notes/2017/11/06/coindozer/
- C++之条形码,windows下zint库的编译及应用(一)
zint库是一个开源的第三方库,提供了生成条形码.二维码等功能.本文主要介绍zint库的生成及简单应用. 工具/原料 vs2012 代码文件下载 1 下载zint包 2 zint依赖另外两个库 ...
- LINUX SHELL 笔记 02: 变量初识
https://www.shellscript.sh/variables1.html 变量是一个可操作(读.写)的内存块的名字. 尝试-1 创建一个变量: root@iZwz:~/labs# sh m ...
- JavScript 日期格式化
JavScript 日期格式化 //日期格式化 function formatDate(date,fmt) { if(date == null || typeof (date) == undefine ...
- [Linux 004]——用户和用户组以及 Linux 权限管理(二)
到权限了.前面讲到了 Linux 中的用户和用户主管理,其实它们的本质(或者用户和用户组出现的初衷)都是方便权限管理.权限管理对于计算机的重要性不言而喻,权限让每个用户能够安安心心的使用计算机,而不用 ...
- SpringCloud Feign报错:Method has too many Body parameters
1.feign多参数问题 1.1GET方式 错误写法 @RequestMapping(value="/test", method=RequestMethod.GET) Model ...
- docker 修改 mysql 5.7 sql_mode
docker exec -ti {容器ID} /bin/bash 进入容器 apt-get install vim 安装vim 找到 vim /etc/mysql/my.cnf 在 [mysqld ...