当前位置: 首页 > news >正文

PHP语言基础知识(超详细)第二节

二十七. 数组的遍历

1)通过函数进行遍历:(例:demo07

(此方式不能完全遍历数组,需要借助其他功能辅助)(不推荐,了解即可)

key():返回数组中当前指针所在位置的键。

current():返回数组中当前指针所在位置的值。

例如:demo07:

<?php/*key():返回数组中当前指针所在位置的键。current():返回数组中当前指针所在位置的值。*/$city = array("云南"=>"昆明","四川"=>"成都","贵州"=>"贵阳");//$key = key($city);//echo $key;   		// 此时只能获取第一个key//$value = current($city);//echo $value;   	// 此时只能获取第一个value// 1.借助while循环完成遍历所有的key// 只要里面有key值,就一直循环。直到最后一个key/*while($key = key($city)){  echo $key; next($city);  // 每次输出后,指针向下移动一位。}*/// 2.借助while循环完成遍历所有的value/*while($value = current($city)){ echo $value; next($city);  // 每次输出后,指针向下移动一位。}*/
?>

2)foreach遍历与for遍历(推荐使用此两种方法) (例:demo08

例如:demo08:

<?php$city = array("云南"=>"昆明","四川"=>"成都","贵州"=>"贵阳");// 1.foreach遍历/*foreach($city as $k=>$v){		echo($k."--".$v."<br/>");}*/// 2.for遍历二维数组$city2 = array(array("昆明","丽江","澄江"),array("成都","绵阳","内江"),array("贵阳","遵义","六盘水"));for($i=0; $i<count($city2); $i++){print_r($city2[$i]);echo "<br/>";}
?>

二十八. 数组相关的函数 (例:demo09

1)count() / sizeof() 返回数组的元素个数。

2)array_count_values() 返回数组,里面统计每个值的出现次数。

3)array_unique() 删除数组中所有重复的值,返回一个由唯一值组成的数组。

4)补充:count(数组名, [0,1])  如果是0,就默认统计。如果是1,递归统计。

例如:demo09:

<?php$city = array("昆明","成都","贵阳","昆明","成都","成都","成都","成都","成都","成都");//1.count() / sizeof() 返回数组的元素个数。//echo count($city);//echo sizeof($city);// 2.array_count_values() 返回数组,里面统计每个值的出现次数//$arr = array_count_values($city);//print_r($arr);// 3.array_unique() 删除数组中所有重复的值,返回一个由唯一值组成的数组//print_r(array_unique($city));// 4.count(数组名, [0,1])  如果是0,就默认统计。如果是1,递归统计。//$city2 = array("昆明",array("成都","宜宾","乐山"),"贵阳");//echo count($city2, 0); // 3/*$city2 = array("北京",array("昆明","丽江","澄江"),array("成都","绵阳","内江"),array("贵阳","遵义","六盘水"),"上海");*///echo count($city2 ,1);  // 14?>

二十九. 数组的排序 (例:demo10

1)array_reverse(数组名, [true]) :将数组的元素倒叙排列。默认是false,如果是true表示绑定默认的键,默认的键和值一起倒叙排列。

2)array_flip() 置换数组中键与值的角色。

3)sort(数组名, 分类编码) 对数组中各元素的值按照由低到高的顺序排列。

分类编码如下:

0:默认,按照标准的ASCII编码顺序。(默认不写)

1:按照数字顺序。

2:按照字符串顺序。

3:按照当前区域的字符串顺序。

4:按照字符串的自然排序。

5:按照字符串顺序,不区分大小写。

例如:demo10:

<?php$names = array("C"=>"Cindy","A"=>"Ada","P"=>"Panny","Z"=>"Zeely","J"=>"Jackie");print_r($names);echo "<br/>";//1.array_reverse() 将数组的元素倒叙排列。print_r(array_reverse($names));echo "<br/>";//print_r(array_reverse($names ,false)); // 默认的键和值一起倒叙排列// 2.array_flip() 置换数组中键与值的角色。print_r(array_flip($names));	// 3.sort(数组名, 分类编码) 对数组中各元素的值按照由低到高的顺序排列。sort($names);    //默认排序print_r($names);echo "<br/>";print_r(array_reverse($names));  // 默认排序后,再倒叙排列	$num = array(4,99,12,6,36,90,109,10010);sort($num);print_r($num);echo "<br/>";sort($num,2);print_r($num);
?>

三十. 数组的合并、接合、截取 (例:demo11

1)array_merge(数组1,数组2,......) :合并数组,如果键重名,会覆盖掉前面的数组。

2)array_merge_recursive(数组1,数组2,......) :合并数组,如果键重名,会把两个值合并在一起,形成一个新的数组,并以原有的键作为组名。

3)array_combine(一组keys,一组values),把提交的一组键和一组值接合成一个新的数组。

4)array_slice(数组名,start,[长度] ),从某一个索引开始截取数组的一部分,得到一个新的数组。

例如:demo11:

<?php//$names = array("yw"=>"语文","sx"=>"数学","yy"=>"英语");//$address = array("km"=>"昆明","dl"=>"大理","yw"=>"义乌","yy"=>"音乐");// 1.array_merge() :合并数组,如果键重名,会覆盖掉前面的元素。//print_r(array_merge($names,$address));//echo "<br/>";// 2.array_merge_recursive() :合并数组,// 如果键重名,会把两个值合并在一起,形成一个新的数组,并以原有的键作为组名//print_r(array_merge_recursive($names,$address));//echo "<br/>";// 3.array_combine(),把提交的一组键和一组值接合成一个新的数组$subject = array("语文","数学","英语");$score = array(126,145,30);print_r(array_combine($subject,$score));// 4.array_slice(数组名,start,[长度] )// 从某一个索引开始截取数组的一部分,得到一个新的数组$subject = array("语文","数学","英语","物理","化学","生物");//$newArr = array_slice($subject,2);  // 从索引2开始截取$newArr = array_slice($subject,2, 3);  // 从索引2开始截取,长度是3print_r($newArr);
?>

三十一. 类与对象:(例:demo01.php)

PHP中的类,表示在程序中处理的实际事物。类中可以定义字段(变量)和方法,这些变量和方法属于类的成员,也称为成员变量和成员方法。他们可以通过访问修饰符来设置其作用域,如:private和protected等。


文章转载自:
http://boleyn.riewr.cn
http://adsorbent.riewr.cn
http://analyser.riewr.cn
http://archeolithic.riewr.cn
http://armadillo.riewr.cn
http://burbot.riewr.cn
http://arrantly.riewr.cn
http://ash.riewr.cn
http://analog.riewr.cn
http://bumbo.riewr.cn
http://abbreviator.riewr.cn
http://castellan.riewr.cn
http://cadastral.riewr.cn
http://africa.riewr.cn
http://boise.riewr.cn
http://antheral.riewr.cn
http://ascidium.riewr.cn
http://blottesque.riewr.cn
http://cdrom.riewr.cn
http://cheekybone.riewr.cn
http://anemochory.riewr.cn
http://australis.riewr.cn
http://anglian.riewr.cn
http://chapelmaster.riewr.cn
http://afeard.riewr.cn
http://carbo.riewr.cn
http://beachside.riewr.cn
http://buchenwald.riewr.cn
http://capacious.riewr.cn
http://adcolumn.riewr.cn
http://www.dtcms.com/a/281125.html

相关文章:

  • OSPFv3中LSA参数
  • dbever 导出数据库表的建表语句和数据插入语句
  • 嵌入式Linux:进程间通信机制
  • AJAX 开发中的注意点
  • ASRPRO系列语音模块(第十天)
  • AI 增强大前端数据加密与隐私保护:技术实现与合规遵
  • Python 程序设计讲义(2):Python 概述
  • pc浏览器页面语音播报功能
  • 多路文件IO的几个模型
  • K-means 聚类在肺炎患者分型中的应用(简单示例)
  • 轻轻松松带你进行-负载均衡LVS实战
  • 随机奖励能提升Qwen数学表现?本质是数据污染
  • brupsuite使用中遇到的一些问题(bp启动后浏览器无法连接)/如何导入证书
  • YCQ340汽油机气缸体总成设计cad【8张】设计说明书
  • 模拟C++简易配置系统(模板类 + 全局管理)
  • 一区 Top (HPJ) | WGAS+WGCNA分析文章套路
  • 零基础学软件测试:超详细软件测试基础理论知识讲解
  • 【实时Linux实战系列】使用系统调用实现实时同步
  • Java项目:基于SSM框架实现的学生档案管理系统【ssm+B/S架构+源码+数据库+毕业论文+开题报告】
  • 智能体技术深度解析:从概念到企业级搭建指南
  • 自学java,什么书比较好?
  • MaxKB使用笔记【持续ing】
  • LeetCode 1888. 使二进制字符串字符交替的最少反转次数
  • 维基框架发布 1.0.11 至中央仓,深化国产化 DevOps 生态整合
  • 3-Nodejs-使用fs文件系统模块
  • kotlin的自学笔记1
  • 文心一言开源版部署及多维度测评实例
  • Listener(监听器)
  • 拓扑排序一>可达性统计
  • [WUSTCTF2020]朴实无华