php课程 4-17  数组键值操作函数有哪些

一、总结

一句话总结:多看学习视频

1、php中数组的键值操作函数有哪6个?

• array_values();
获取数组中的值
• array_keys();
获取数组中的键
• in_array();
检查一个值是否在数组中
• array_key_exists();
检查一个键是否在数组中
• array_flip();
键和值对调
• array_reverse();
数组中的值反转

2、php中统计数组的元素和唯一性有哪3个?

• count();
统计数组的个数
• array_count_values();
统计数组中值出现的次数 
• array_unique();
删除数组中重复值

3、php中使用回调参数处理数组的函数有哪两个?

• array_filter();
数组值过滤
• array_map();
将回调函数作用到给定数组的单元上

4、php中如何实现数组映射?

array_map数组映射

 4 $arr2=array_map('cf3',$arr);
5
6 function cf3($val){
7 return $val*$val*$val;
8 }

5、php过滤数组中的奇偶数?

array_filter()

 5 $arr2=array_filter($arr,'odd');
6
7 function even($val){
8 return $val%2==0;
9 }

6、php如何判断一个键在不在一个数组中?

ayyary_key_exists

 9 var_dump(array_key_exists('username',$arr));

7、php如何判断值在不在数组中?

in_array()

14 if(!in_array($file,$allow)){

二、数组键值操作函数有哪些

1、相关知识

1.数组的键值操作函数
• array_values();
获取数组中的值
• array_keys();
获取数组中的键
• in_array();
检查一个值是否在数组中
• array_key_exists();
检查一个键是否在数组中
• array_flip();
键和值对调
• array_reverse();
数组中的值反转

2.统计数组的元素和唯一性
• count();
统计数组的个数
• array_count_values();
统计数组中值出现的次数
• array_unique();
删除数组中重复值

3.使用回调参数处理数组的函数
• array_filter();
数组值过滤
• array_map();
将回调函数作用到给定数组的单元上

2、代码

array_map数组映射

 <?php
$arr=array(1,2,3,4,5,6,7,8,9,10); $arr2=array_map('cf3',$arr); function cf3($val){
return $val*$val*$val;
} echo "<pre>";
print_r($arr2);
echo "</pre>";
?>

array_filter过滤数组中的奇偶数

 <?php 

 $arr=array(1,2,3,4,5,6,7,8,9,10);

 $arr2=array_filter($arr,'odd');

 function even($val){
return $val%2==0;
} function odd($val){
return $val%2==1;
} echo "<pre>";
print_r($arr2);
echo "</pre>";
?>

array_key_exists判断一个键在不在一个数组中

 <?php 

 $arr=array(
'name'=>'user1',
'age'=>'20',
'sex'=>'nan',
); var_dump(array_key_exists('username',$arr)); ?>

in_array判断值在不在数组中

 <?php 

 // $arr=array(
// 'name'=>'user1',
// 'age'=>'20',
// 'sex'=>'nan',
// ); $file='doc'; $allow=array('gif','jpg','png','doc'); if(!in_array($file,$allow)){
echo '该文件类型不允许上传!';
}else{
echo '文件上传成功!';
}
?>
 
 

php课程 4-17 数组键值操作函数有哪些的更多相关文章

  1. php数组键值操作和数组统计函数-函数

    1.数组函数//作用:提供了很多官方写的很多有用的代码段,提高编写速度 1)数组的键值操作函数 array_values();//获取数组中的值 array_keys();//获取数组中的键 in_a ...

  2. redis键值操作

    1.1. redis键值操作 1.1.1. keys patten 查询相应的key 可以精确的查,也可以模糊的查 1.1.1.1. 通配符:* ? [] 在redis里,模糊查询key的时候有3个通 ...

  3. PHP数组键值使用单引号和双引号和无符号的区别

    PHP数组键值使用单引号和双引号和无符号的区别 方法/步骤 1 第一种:$array['key']此单引号键值模式可以直接被解析为一个数组即$array 第二种:$array["key&qu ...

  4. php数组和部分操作函数

    1. 数组定义 数组的定义使用 array()方式定义,可以定义空数组: <?php $number = array(1,3,5,7,9); //定义空数组 $result = array(); ...

  5. redis基础之基本键值操作和使用(三)

    前言 redis安装完毕后开始使用redis,先熟悉命令行操作. redis数据的类型 键:redis的所有的键都是string类型: 值:五种类型 string:字符串类型:一个string最大可以 ...

  6. 【redis常用的键值操作及性能优化】

    服务端 启动redis服务 { // -a:指定密码 -h:指定主机 -p:指定端口 } //让redis 服务中断崩溃 //保存和关闭 //后台备份 //设置登录密码 //redis-benchma ...

  7. javascript 数组的常用操作函数

    join() Array.join(/* optional */ separator) 将数组转换为字符串,可带一个参数 separator (分隔符,默认为“,”). 与之相反的一个方法是:Stri ...

  8. mysql中,通过json_insert函数向json字段插入键值?json_insert函数的使用?

    需求描述: 通过json_insert向json字段中插入值,在此进行实验,记录下. 操作过程: 1.查看已经有的包含json数据类型的表 mysql> select * from tab_js ...

  9. JavaScript之数组的常用操作函数

    js对数组的操作非常频繁,但是每次用到的时候都会被搞混,都需要去查相关API,感觉这样很浪费时间.为了加深印象,所以整理一下对数组的相关操作. 常用的函数 concat() 连接两个或更多的数组,并返 ...

随机推荐

  1. 关于编译com工程的一些体会

    作者:朱金灿 来源:http://blog.csdn.net/clever101 今天发现com的编译的一个重要一步是微软提供的midl工具将其中的idl文件生成一个头文件.c文件(即IID文件)和代 ...

  2. BZOJ3277: 串(后缀自动机,Parent树,Dfs序)

    Description 字符串是oi界常考的问题.现在给定你n个字符串,询问每个字符串有多少子串(不包括空串)是所有n个字符串中 至少k个字符串的子串(注意包括本身). Input 第一行两个整数n, ...

  3. Arch Linux实体机安装记录

    下面将记录笔者在戴尔笔记本安装arch linux的过程,用于记录,以便下次使用. 本文的内容参考arch linux官方Wiki. 首先,使用Power ISO把镜像安装到U盘,使用U盘安装. 通过 ...

  4. bootstrap课程12 滚动监听如何实现(bootstrap方式和自定义方式)

    bootstrap课程12 滚动监听如何实现(bootstrap方式和自定义方式) 一.总结 一句话总结:通过监听滚动的高,判断滚动的高是否大于元素距离顶端的距离 1.如何知道屏幕滚动的高? st=$ ...

  5. Android BuildConfig:Gradle自定义你的BuildConfig

    在很早之前我发布了这篇博客Android BuildConfig.DEBUG的妙用, 提到了Eclipse中通过BuildConfig.DEBUG字段用来调试Log非常好用,但是殊不知在Android ...

  6. Monkey (压力测试)-移动端手机压力测试工具 monkey以及monkeyrunner

    4. Monkey (压力测试) 这个是Android提供的系统工具.它向系统发送伪随机的用户事件流(如按键输入.触摸屏输入.手势输入等),实现对正在开发的应用程序进行压力测试.Monkey测试是一种 ...

  7. Eclipse如何从导入SVN上导入项目

    1.右键单击,选择 Import,进入导入项目窗口 2.点击选择从SVN检出项目,点击Next下一步 3.选择创建新的资源库位置,点击Next,如果项目之前已经导入过删除掉了,重新导入的时候,只需勾选 ...

  8. 【AtCoder Regular Contest 082】Derangement

    [链接]点击打开链接 [题意] 在这里写题意 [题解] 贪心. 连续一块的p[i]==i的话,对答案的贡献就应该为(这个连续块的长度+1)/2; 长度为1的也正确. (也即两两相邻的互换位置.) [错 ...

  9. Java中接口继承泛型接口

    在使用Mybatis做web开发时,每一个模块的数据持久层的接口都会定义:增删改查四个方法.我想为什么不新建一个Base接口来做所有数据持久层的父接口呢? 于是,我试验了一下,建立了一个泛型接口,里面 ...

  10. COGS——C2098. Asm.Def的病毒

    http://www.cogs.pro/cogs/problem/problem.php?pid=2098 ★☆   输入文件:asm_virus.in   输出文件:asm_virus.out    ...