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 ...
随机推荐
- Centos上安装python3.5以上版本
一.准备工作: yum install zlib-devel yum install openssl-devel 二.安装python3.5 wget https://www.python.org/f ...
- 【npm】使用淘宝提供的镜像来加速npm
国外的npm用着非常不稳定,时常一直就卡在安装的进度条上 淘宝提供了一个国内镜像,保障了安装网络环境的稳定,和源地址10分钟同步一次,没有被收录的包会自动切换到npm官方下载,并添加进镜像库. 地址: ...
- Lua 可控下标数组遍历
, , , , , , , , , , , } , , } local j = 1 while i <= #aaa do if bbb[j] == aaa[i] then -- 如果 b下标元素 ...
- 对Spring Ioc 以及DI的精彩理解
转:http://blog.csdn.net/cyjs1988/article/details/50352916 学习过spring框架的人一定都会听过Spring的IoC(控制反转) .DI(依赖注 ...
- [转]手把手教你搭建Hive Web环境
了解Hive的都知道Hive有三种使用方式——CLI命令行,HWI(hie web interface)浏览器 以及 Thrift客户端连接方式. 为了体验下HWI模式,特意查询了多方的资料,都没有一 ...
- CSS Margin(外边距)
CSS Margin(外边距) 一.简介 CSS margin(外边距)属性定义元素周围的空间. margin 清除周围的(外边框)元素区域.margin 没有背景颜色,是完全透明的. margin ...
- 2705: [SDOI2012]Longge的问题
Time Limit: 3 Sec Memory Limit: 128 MBSubmit: 1898 Solved: 1191[Submit][Status][Discuss] Descripti ...
- vue.js的一些小语法v-for,v-text,v-html,v-on:click
1.Vue的目录结构: ======================================================================================== ...
- 新一代调试王者Console
随着JS在Web前端中能做的事情越来越多,责任越来越大,而地位也越来越重要.传统的alert调试方式已经渐渐不能满足前端开发的种种场景.而且alert调试方式弹出的调试信息,那个窗口着实不太美观,而且 ...
- 那些年java MD5加密字符编码的坑
相信做过MD5加密的童鞋都遇到过字符编码的坑,一般加密出来的结果和其他人不一样都是字符编码不一致导致的,比如类文件的字符编码.浏览器的字符编码等和对方不一致,所以就需要转码统一字符. 以下是笔者转码过 ...