详解php中的数组

本文详细介绍了PHP中的数组,包括定义格式、关联型数组和索引数组的区别。重点讲解了如何遍历数组,以及进行增删改查操作,如增加元素、删除数据、修改数据和查询数据。此外,还介绍了几个常用的数组函数:count()用于获取数组长度,array_key_exists()检查键值是否存在,in_array()判断值是否在数组中,以及array_keys()将数组的键转换为索引数组。
摘要由CSDN通过智能技术生成

定义格式

$arrayName = ('xxx',xx,true);

数组的形式有两种,一种是索引数组,一种是关联数组,关联行数组它的key是自己定义的,索引型数组的key是程序给的:

关联型数组

格式:

<?php
$a = '123';
$b = 'admin';

$array = array(
	'key1' => 'wuhan',
	'key2' => 'jinan',
	'key3' => 'beijing'
);
var_dump($array);
 ?> 

数组的遍历

用到的是**foreach()**函数:

<?php
$a = '123';
$b = 'admin';
$arr = array(1,2,3,'niubi');

$array = array(
	'key1' => 'wuhan',
	'key2' => 'jinan',
	'key3' => 'beijing'
);

foreach ($array as $key => $value) {
	echo $key.'---'.$value.'<br>';
}
?>

在这里插入图片描述

数组的增删改查

增加

在数组后跟一个[],然后把要添加的数据赋值给它即可

<?php
$a = '123';
$b = 'admin';
$arr = array(1,2,3,'niubi');

$array = array(
	'key1' => 'wuhan',
	'key2' => 'jinan',
	'key3' => 'beijing'
);
# 输出增加数据前的数组
print_r($arr);
echo "<br>";
# 增加数据
$arr[] = 'ff';
# 输出增加数据后的数组
print_r($arr);
?>

在这里插入图片描述

删除数据

这里用到unset()函数,格式就是unset($arrName[x]),x为数组中数据的下标:

<?php
$a = '123';
$b = 'admin';
$arr = array(1,2,3,'niubi');

$array = array(
	'key1' => 'wuhan',
	'key2' => 'jinan',
	'key3' => 'beijing'
);
# 输出增加数据前的数组
print_r($arr);
echo "<br>";
# 增加数据
$arr[] = 'ff';
# 输出增加数据后的数组
print_r($arr);
# 删除数组arr中的第一个数据,并输出arr当前数据
unset($arr[0]);
echo "<br>";
print_r($arr);
?>

在这里插入图片描述

修改数据

数据的修改也挺简单的,直接通过索引进行修改即可

<?php
$a = '123';
$b = 'admin';
$arr = array(1,2,3,'niubi');

$array = array(
	'key1' => 'wuhan',
	'key2' => 'jinan',
	'key3' => 'beijing'
);
# 输出增加数据前的数组
print_r($arr);
echo "<br>";
# 增加数据
$arr[] = 'ff';
# 输出增加数据后的数组
print_r($arr);
# 删除数组arr中的第一个数据,并输出arr当前数据
unset($arr[0]);
echo "<br>";
print_r($arr);
# 通过索引修改数据
$arr[3] = 'www.niubi.com';
# 打印修改后的数据
echo "<br>";
print_r($arr[3]);
?>
查询数据

上面每次print_r都是一次查询,跟上数据对应的下标,或者用foreach()函数来进行遍历输出即可。

<?php
$a = '123';
$b = 'admin';
$arr = array(1,2,3,'niubi');

$array = array(
	'key1' => 'wuhan',
	'key2' => 'jinan',
	'key3' => 'beijing'
);

foreach ($arr as $key => $value) {

	echo $key.'-->'.$value;
	echo "<br>";
}

# 或者

for($i=0;$i<count($arr);$i++){

	echo "$arr[$i]";
	echo "<br>";
}

# 或者

while ($row = each($arr)) 
{
		list($k,$y) = $row;
		echo "$k => $y <br>";
}
?>

关于数组的几个函数

count()

返回当前数组的长度:

<?php
$a = '123';
$b = 'admin';
$arr = array(1,2,3,'niubi');

$array = array(
	'key1' => 'wuhan',
	'key2' => 'jinan',
	'key3' => 'beijing'
);

$len = count($array);
# 输出3(数组array的长度为3)
echo "$len";
?>
array_key_exists()

判断键值是否存在,返回的是一个bool值:

<?php
$a = '123';
$b = 'admin';
$arr = array(1,2,3,'niubi');

$array = array(
	'key1' => 'wuhan',
	'key2' => 'jinan',
	'key3' => 'beijing'
);

$len = array_key_exists('key3', $array);
var_dump($len);
?>
in_array()

判断值是否在里面,返回的也是bool类型的值:

<?php
$a = '123';
$b = 'admin';
$arr = array(1,2,3,'niubi');

$array = array(
	'key1' => 'wuhan',
	'key2' => 'jinan',
	'key3' => 'beijing'
);

$len = array_key_exists('key3', $array);
var_dump($len);
?>

array_keys()

把数组中的键值转为索引型数组:

<?php
$a = '123';
$b = 'admin';
$arr = array(1,2,3,'niubi');

$array = array(
	'key1' => 'wuhan',
	'key2' => 'jinan',
	'key3' => 'beijing'
);

# array_keys()把数组的键值保存到一个索引型数组里,我这里把数组的值附给了$len
$len = array_keys($array);
# 循环遍历$len把他的值与数据分别赋值给$key,$vla,并打印len中的值
while (list($key,$vla) = each($len)) 
{
	echo $key.'==>'.$vla.'<br>';
}
?>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值