从头学PHP之数组输出&基本函数

上期我们讲到了数组,数组是个特殊的变量,在程序中的重要程度很高,大部分数据处理的时候会用到这种特殊的变量,那么现在让我们继续深入一下吧。

上期我们打印出了数组的值,用print_r()或者var_dump()这俩函数,在本期中会涉及到用循环输出数组的所有元素,和用特定的key值来获取指定元素

一、获取数组指定元素

1、一维数组

数值数组
php 复制代码
$cars=array("Volvo","BMW","Toyota");

如果我们想取出某个元素 那么我们可以用数组名+下标(key)的方式

因为是数值数组所以key必须是整数例如 0,1,2

语法:

php 复制代码
$cars[num]

示例

如果我们想取得数组内第一个元素的值

php 复制代码
echo $cars[0];

结果:
Volvo

关联数组
php 复制代码
$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");

如果我们想取出某个元素 那么我们可以用数组名+下标(key)的方式

关联数组每个值有固定的key

语法:

php 复制代码
$age["key"]

示例:

如果我们想取得下标(key)为Peter的值

php 复制代码
$age["Peter"]

结果:
35

2、 多维数组

上期我们讲了多维数组的概念

语法:

1、数值数组
php 复制代码
array (
    array (elements...),
    array (elements...),
    ...
)

所以我们想取某个元素时根据上图中就可以获取到

php 复制代码
<?php
// 二维数组:
$cars = array
(
    array("Volvo",100,96),
    array("BMW",60,59),
    array("Toyota",110,100)
);
?>

比如我们想取得$cars数组中第一个数组中的第二个元素

php 复制代码
$cars[0][1]

输出:
100

2、关联数组

语法:

php 复制代码
array (
   "key1"=> array (elements...),
   "key2"=> array (elements...),
    ...
)

示例:

php 复制代码
<?php
// 二维数组:
$cars = array
(
    "Volvoinfo"=> array("Volvo",100,96),
    "BMWinfo"=>array("BMW",60,59),
    "Toyotainfo"=>array("Toyota",110,100)
);
?>

比如我们想取得 "Volvoinfo"中的第一个元素

php 复制代码
$cars["Volvoinfo"][0]

结果
Volvo

二、遍历数组

上期我们讲到数组有 ,数值数组、关联数组、多维数组

现在有两种方式遍历数组

  1. for循环遍历
  2. foreach循环遍历

1、for循环遍历

用for循环遍历的话一般只用于遍历数值数组,for循环的参数咱们应该还记得吧

语法

php 复制代码
for(初始值,条件,增量){
	
}

那咱们怎么确定用于循环的参数呢呢?

  1. 初始条件,因为数值数组的ID值是从0开始的(上期有讲)所以当循环数值数组时初始值维0
  2. 条件,我们循环不可能无限循环,当数组内的元素被全部遍历之后那么循环就该停止,所以数组的长度,或者说数组内元素的个数就是咱们判断的条件,当循环次数大于数组的长度(个数)时,停止循环

示例:

php 复制代码
<?php
//定义数组
$cars=array("Volvo","BMW","Toyota");
//获取数组长度
$arrlength=count($cars);
//开始循环
for($x=0;$x<$arrlength;$x++)
{
    echo $cars[$x];
    echo "<br>";
}
?>

输出:

复制代码
Volvo
BMW
Toyota
本期会讲关于数组的一些相关函数,获取数组长度的函数也会包括在内

2、foreach循环遍历

foreach循环不管是关联数组还是数值数组都可以用,也是遍历循环中最常用的

语法:

php 复制代码
foreach($array as $key=>$val){

}

foreach循环就不用判断数组的长度,当数组内的元素被循环遍历完成之后就会停止循环比较省心

示例:

php 复制代码
<?php
$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");
 
foreach($age as $x=>$x_value)
{
    echo "Key=" . $x . ", Value=" . $x_value;
    echo "<br>";
}
?>

三、数组基本函数

  1. count()用于对数组或 Countable 对象中的所有元素进行计数
  2. array_push()将一个或多个单元压入数组的末尾(入栈)
  3. array_pop() 弹出数组最后一个单元(出栈)
  4. array_shift()将数组开头的单元移出数组
  5. array_unshift()在数组开头插入一个或多个单元
  6. array_slice()从数组中取出一段
  7. array_merge()合并一个或多个数组
  8. array_key_exists()检查数组里是否有指定的键名或索引
  9. array_search()在数组中搜索给定的值,如果成功则返回首个相应的键名

我都把相应函数的详细信息添加了超链接,大家可以点击跳转到官方网站(英语好的自行阅读,英语不好的,在网页 右击-》翻译为中文)

预告

下期讲 对象

相关推荐
两个人的幸福9 天前
Windows 桌面应用自研 PHP 队列(下):完整代码与六大工程化优化
php
BingoGo12 天前
PHP 泛型之殇 泛型 RFC 提案被拒绝
后端·php
JaguarJack12 天前
PHP 泛型之殇 泛型 RFC 提案被拒绝
后端·php
用户30745969820712 天前
PHP 扩展——从入门到理解
php
鹏仔先生13 天前
拷贝漫画APP下载页PHP程序,后台带免费AI写作
php
云水一下13 天前
从零开始学 PHP 系列(一):PHP 的前世今生与开发环境搭建
开发语言·php
xingpanvip13 天前
星盘接口开发文档:本命盘接口指南
android·开发语言·css·php·lua
酉鬼女又兒13 天前
零基础入门计算机网络运输层:端到端通信核心作用、端口号分类规则、复用分用工作机制及UDP与TCP协议全方位对比详解
网络·网络协议·tcp/ip·计算机网络·考研·udp·php
dog25013 天前
不要再继续优化 TCP
网络协议·tcp/ip·php
Channing Lewis13 天前
PHP 解析 Excel 的那些坑:一次“行号错位”引发的数据丢失
开发语言·php·excel