PHP基础学习第十六篇(了解数组、创建数组、数组排序、总结数组的使用)

news2024/11/19 19:46:09

一、什么是数组

数组是一个能在单个变量中存储多个值的特殊变量。

如果有一个项目清单(例如:序号名单),将其存储到单个变量中,如下所示:

$a=1;$b=2;$c=3;

然而,如果想要遍历数组并找出特定的一个呢?如果数组的项不只是3个而是300个呢?

解决办法就是创建一个数组!

数组可以在单个变量中存储多个值,并且可以根据键访问其中的值。

二、创建数组

在PHP中,有三种类型的数组:

数值数组        -        带有数字ID键的数组;

关联数组        -        带有指定的键的数组,每个键关联一个值;

多维数组        -        包含一个或多个数组的数组;

举例:

数值数组:

自动分配ID键(ID键总是从0开始的):

$cars=array("Volvo","bmw","Toyota");

人工分配ID键:

$cars[0]="Volvo";

$cars[1]="bmw";

$cars[2]="Toyota";

获取数组的长度        - count()函数:

<?php

$cars=array("Volvo","bmw","Toyota");

echo count($cars);

?>

创建并打印数值数组中的所有值,可以使用for循环:

<?php

$cars=array("Volvo","bmw","Toyota");

$arrlength=count($cars);

for($x=0;$arrlength;$x++){

        echo$cars[$x];

        echo"<br>";

}

?>

关联数组:

这里有两种创建关联数组的方法:

第一种方法:

$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");

第二种方法:

$age['Peter']="35";

$age['Ben']="37";

$age['Joe']="43";

举例:

<?php

$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");

echo"peter is".$age['Peter']."years old.";

?>

遍历并打印关联数组中的所有值,可以使用foreach循环

<?php

$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");

foreach($age as $x=>$x_value){

        echo"Key=".$x.",Value=".$x_value;

        echo"<br>";

}

三、数组排序

数组中的元素可以按字母或数字顺序进行降序或升序排序

sort()        -对数组进行升序排序

rsort()        -对数组进行降序排序

asort()        -根据关联数组的值,对数组进行升序排序

ksort()        -根据关联数组的键,对数组进行升序排序

arsort()        -根据关联数组的值,对数组进行降序排序

krsort()        -根据关联数组的键,对数组进行降序排序

举例:

sort()        -对数组进行升序排序:

<?php

$numbers=array(4,6,1,8,3);

sort($numbers);

?>

rsort()        -对数组进行降序排序:

<?php

$numbers=array(4,6,1,8,3);

rsort($numbers);

?>

asort()        -根据关联数组的值,对数组进行升序排序:

<?php

$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");

asort($age)

?>

ksort()        -根据关联数组的键,对数组进行升序排序:就是按照a、b、c、d、e、f、g来排序:

<?php

$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");

ksort($age)

?>

arsort()        -根据关联数组的值,对数组进行降序排序:

<?php

$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");

arsort($age)

?>

krsort()        -根据关联数组的键,对数组进行降序排序

<?php

$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");

krsort($age)

?>

四、总结

PHParray参考手册:

https://www.runoob.com/php/php-ref-array.html

1、数组及数组类型

2、数组排序

演示代码如下:

<?php
//创建一个数组
$cars=array("沃尔沃","宝马","丰田");
echo"我喜欢的车是,".$cars[0].$cars[1].$cars[2]."<br>";
//获取数组的长度
echo $carsNum=count($cars)."<br>";
//for循环遍历出这个数组的全部内容
for($i=0;$i<$carsNum;$i++){
    echo $cars[$i];
    echo"<br>";
}
//创建一个关联数组
$age=array("chen"=>"18","ze"=>"27","hui"=>"25");
echo"ze已经".$age['ze']."岁了<br>";
//使用foreach打印关联数组
foreach($age as $x=>$x_value){
    echo"键名为:".$x."键值为:".$x_value;
    echo"<br>";
}
//sort排序-升序
$num=array(1,5,9,3,4,6);
sort($num);
var_dump($num);
echo"<br>";
//降序排序
rsort($num);
var_dump($num);
//关联数组键值升序
echo"<br>";
asort($age);
var_dump($age);
//关联数组键值降序
echo"<br>";
arsort($age);
var_dump($age);
//关联数组键名升序
echo"<br>";
ksort($age);
var_dump($age);
//关联数组键名降序
echo"<br>";
krsort($age);
var_dump($age);


代码效果如下:

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/562.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

School assignment

目录 一、常用控制类汇编指令 二、编程实现统计寄存器AX中“1”和“0”的个数 三、编程实现从键盘输入10个1位整数 四、编程实现从键盘输入两个10进制的2位整数的和 五、编写程序练习直接、间接、相对、基址变址寻址 一、常用控制类汇编指令 MOV 传送字或字节. MOVSX 先…

JVM虚拟机

"天下事有难易乎&#xff1f;为之则易&#xff0c;不为则难" 一、初识JVM JVM是一个跨语言的平台&#xff0c;为那些能够跨平台运行的程序提供一个平台&#xff0c;JVM本身与java语言没有必然的联系&#xff0c;它只与特定的二进制文件格式.class文件所关联&#xff…

人生重开模拟器(Python实现)

文章目录人生重开模拟器介绍代码实现打印初始界面设置初始属性设置角色性别设置角色出生点针对每一岁&#xff0c;生成人生经历人生重开模拟器介绍 人生重开模拟器是由VickScarlet上传至GitHub的一款简单的文字网页游戏。 玩家点击“立即重开”并设置角色的初始属性后&#xf…

HTML 学习总结

超级详细的 HTML 学习笔记&#xff0c;一篇入门系列&#xff01;&#xff01;耐心读一遍 复习必备&#xff01;&#xff01; 目录 简要 认识标签 基本结构 常见标签 1. 注释 ---> ctrl / 2. 标题标签 ---> h1 h2 h3 h4 h5 h6 3. 段落标签 ---> p 4. 换行 ---> br …

Git | 一文带你零基础快速上手Git

&#x1f451; 博主简介&#xff1a;    &#x1f947; Java领域新星创作者    &#x1f947; 阿里云开发者社区专家博主、星级博主、技术博主 &#x1f91d; 交流社区&#xff1a;BoBooY&#xff08;优质编程学习笔记社区&#xff09; 前言&#xff1a;本文适合零基础小白…

Docker

目录1、docker介绍1.1 docker是什么1.2 容器与虚拟机的比较2、docker安装2.1 docker 基本组成2.2 安装步骤2.3 阿里云镜像加速2.4 run干了什么3、docker常用命令3.1 帮助命令及启动命令3.2 镜像命令3.3 容器命令4、Docker镜像4.1 镜像是什么&#xff1f;4.2 分层镜像 UnionFS 联…

时间复杂度和空间复杂度

文章目录一、算法的复杂度二、时间复杂度1.时间复杂度概念2.大O的渐进表示法3.常见时间复杂度计算举例3.1 实例1 【 O(N)】3.2 实例2 【O(NM)】3.3 实例3 【O(1)】3.4 实例4 【O(N)】3.5 实例5 【O(N^2)】3.6 实例6 【O(logN)】3.7 实例7 【O(N)】3.8 实例8【O(2^N)】三、空间复…

新的3D地图制图技术改变了全球定位的游戏规则

有人说&#xff1a;一个人从1岁活到80岁很平凡&#xff0c;但如果从80岁倒着活&#xff0c;那么一半以上的人都可能不凡。 生活没有捷径&#xff0c;我们踩过的坑都成为了生活的经验&#xff0c;这些经验越早知道&#xff0c;你要走的弯路就会越少。 在人类技术发展的历史长河…

市场裁猿~ 行业内卷~ Android 开发突破重围?

往日光鲜亮丽的互联网企业在今年彻底进入了寒冬&#xff0c;往年的高不可攀&#xff0c;低成本运营&#xff0c;在今年都不再是护身符。更是有不少互联网大厂开启了裁员模式&#xff0c;其中就有百度、阿里巴巴、快手、汽车之家等知名企业。 从今年三月起直到现在互联网各厂裁员…

【微信小程序系列:二】小程序常用功能:文字可复制、跳转地图、扫一扫、拨打电话、调整屏幕亮度、监听截屏...

一.先言&#xff1a; (&#xff5e;&#xffe3;▽&#xffe3;)&#xff5e;&#xff0c;hello&#xff0c;微信小程序系列第二篇&#xff0c;介绍下小程序里的常用功能api&#xff0c;可以快速copy使用~ 二.文字可复制&#xff1a; 小程序页面里的文字默认是没有长按复制功…

自动泊车停车位检测算法

转自&#xff1a;https://zhuanlan.zhihu.com/p/522630354 图1&#xff1a;泊车示意图一、背景介绍 自动泊车大体可分为4个等级&#xff1a; 第1级&#xff0c;APA 自动泊车&#xff1a;驾驶员在车内&#xff0c;随时准备制动&#xff0c;分为雷达感知和雷达视觉感知两种方式。…

手机批发业务-商品备选区

样式 代码 <!doctype html> <html lang"en"><head><meta charset"UTF-8"><meta name"author" content"huyiwei"><meta name"generator" content"HBuilder X"><title>…

大数据项目之电商数仓、用户行为日志、服务器和JDK准备、模拟数据

文章目录3. 用户行为日志3.4 服务器和JDK准备3.4.1 服务器准备3.4.2 编写集群分发脚本xsync3.4.3 SSH无密登录配置3.4.4 JDK准备3.4.5 环境变量配置说明3.5 模拟数据3.5.1 使用说明3.5.1.1 将application.yml、gmall2020-mock-log-2021-10-10.jar、path.json、logback.xml上传到…

【C语言】经典编程题

文章目录1. Fibonacci数列 ⭐️2. 替换空格 &#x1f31f;3. 找单身狗 &#x1f4ab;4. 模拟实现 atoi ✨1. Fibonacci数列 ⭐️ 做题链接&#xff1a;Fibonacci数列 Fibonacci数列是这样定义的&#xff1a; F[0] 0 F[1] 1 for each i ≥ 2: F[i] F[i-1] F[i-2] 因此&…

[数据结构初阶]算法的时空复杂度

目录 算法效率 如何衡量一个算法的好坏 算法的复杂度 时间复杂度 时间复杂度的概念 大O的渐进表示法 常见时间复杂度计算举例 例一&#xff1a; 例二&#xff1a; 例三&#xff1a; 例四&#xff1a…

C规范编辑笔记(三)

继上篇我们的C规范编辑笔记(二)后&#xff0c;我们今天开始分享第三篇笔记&#xff0c;话不多说&#xff0c;我们开始~ 1、一个 tab 键盘等于四个空格键。我们在编程的时候最好使用空格键而不是使用 tab 键&#xff0c;当两个编译器的 tab 键设置的大小不一样的时候&#xff0…

无人机基础知识:多旋翼无人机自动控制原理与算法

无人机基础知识&#xff1a;多旋翼无人机自动控制原理与算法前言无人机自动控制器PID控制算法前言 无人机&#xff08;Unmanned Aerial Vehicle&#xff09;&#xff0c;指的是一种由动力驱动的、无线遥控或自主飞行、机上无人驾驶并可重复使用的飞行器&#xff0c;飞机通过机…

Linux:进程描述、进程创建(fork)、进程状态(僵尸进程、孤儿进程)

目录操作系统进程的基本概念进程创建&#xff08;fork)进程状态僵尸进程孤儿进程操作系统 操作系统是一个管理计算机软硬件资源的软件&#xff0c;它包括内核&#xff08;进程管理&#xff0c;内存管理&#xff0c;文件管理&#xff0c;驱动管理&#xff09;和其他程序&#x…

神经网络输出表达式,神经网络数据格式

1、BP神经网络输入输出格式问题 在你的代码基础上说了。 clc;clear; close all; pload(originaldata.txt);%你问题最后说的数据文件名跟这个不同。 p1p; t[1];% 这个输出&#xff08;Targets&#xff09;应该和输入数据对应&#xff0c;输入数据有10个&#xff0c;输出应该也是…

如何从0到1搭建一个个人网站

前言 如何从0到1搭建一个可以外网访问的项目&#xff1f; 我就用自己的服务器给大家举例&#xff0c;怎么从0到1搭建一个学生和新手可以用来面试的项目&#xff0c;老手也可以回忆一下自己逝去的青春。 服务器在激活的时候会让你选系统&#xff0c;这个时候敖丙我个人建议&a…