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 ...
随机推荐
- 19. Remove Nth Node From End of List(移除倒数第N的结点, 快慢指针)
Given a linked list, remove the nth node from the end of list and return its head. For example, Give ...
- 由浅入深之Tensorflow(4)----Saver&restore
x = tf.placeholder(tf.float32) y = tf.placeholder(tf.float32) w = tf.Variable(tf.zeros([1, 1], dtype ...
- tomcat高并发配置调优
最近部署的tomcat,里面放了一个apk提供给测试人员测试,而有一天压测的时候,他们一致反馈下载不了,结果查看日志才发现如下错误: [html] view plain copy INFO: Maxi ...
- Linux 模拟网络丢包,延时
实战: 丢包tc qdisc add dev bond0 root netem loss 10% 延迟tc qdisc add dev bond0 root netem latency 100ms 丢 ...
- python3.6连接mysql或者mariadb
python3.6版本的安装查看上一篇文章 mysql或mariadb数据库的安装查看以前的文章,这里不再赘述 首先在mariadb数据库中创建相应的库和表: MariaDB [(none)]> ...
- linux下tar的使用方法
1.仅打包 tar -cvf hello.tar hello (输出文件大小为10240) 2.打包后压缩成gzip压缩格式 tar -czvf hello.tar.gz hello (输出文件大小为 ...
- [Hdu6315]Naive Operations
题意:给定一个初始数组b和一个初始值全部为0的数组a,每次操作可以在给定的区间(l,r)内让a[i](l=<i<=r)加一,或者查询区间区间(l,r)中a[i]/b[i](l=<i& ...
- Caffe学习笔记(一):Caffe架构及其模型解析
Caffe学习笔记(一):Caffe架构及其模型解析 写在前面:关于caffe平台如何快速搭建以及如何在caffe上进行训练与预测,请参见前面的文章<caffe平台快速搭建:caffe+wind ...
- ElasticSearch集群故障案例分析: 警惕通配符查询
最近ElasticSearch集群出现了 https://elasticsearch.cn/article/171 文章中描述的情况,现在转载全文警示下自己. 许多有RDBMS/SQL背景的开发者,在 ...
- CentOS 7 Firewalld 常用操作
1.简介 Zone 级别 drop: 丢弃所有进入的包,而不给出任何响应block: 拒绝所有外部发起的连接,允许内部发起的连接public: 允许指定的进入连接external: 同上,对伪装的进入 ...