w16php系列之基础数组

一、索引数组

概念

索引数组 是指键名为整数的数组。默认情况下,索引数组的键名是从0开始,并依次递增。它主要适用于利用位置(0、1、2......)来标识数组元素的情况。另外,索引数组的键名也可以自己指定

示例代码

php 复制代码
<?php 
# 索引数组
$arr=[5,1,2];
echo $arr[0];
echo '<hr>';
echo $arr[2];
?>

输出结果

二、关联数组

概念

关联数组是指键名为字符串的数组。通常情况下,关联数组元素的"键"和"值"之间有一定的业务逻辑关系。

示例代码

php 复制代码
#array()数组基本用法
<?php
$age=array("A"=>"1","B"=>"2","C"=>"3");
echo "A is " . $age['A'] . " years old.";
?> 

输出结果

三、遍历数组

3-1.fori循环读取数组中的所有元素

php 复制代码
<?php
$arr = ['A', 'B', 'C', 'D'];
#count() 统计数组元素个数
$arr_len=count($arr);

for($i=0;$i<$arr_len;$i++){
    echo $arr[$i];
    echo "<br/>";
}
?>

输出结果

3-2.foreach循环读取数组中的所有元素

php 复制代码
<?php
$arr = ['D', 'B', 'C', 'D'];
foreach($arr as $value ){
    echo $value;
    echo "<br/>";
}
?>

输出结果

四、合并数组array_combine()

4-1.array_combine(),两个数组合并,数组之间为key:value的关系

php 复制代码
<?php
$key = ['name', 'age', 'sex'];
$value = ['张san','16','女'];
$obj=array_combine($key,$value);
foreach($obj as $key => $value ){
    echo $key.":".$value;
    echo "<br/>"; 
}
?>

输出结果

4-2.array_merge(),两个数组合并,平级

php 复制代码
<?php
$key = ['name', 'age', 'sex'];
#尾部添加元素
array_push($key,'address');
$value = ['张san','16','女'];
array_push($value,'泰山');
$obj=array_merge($key,$value);
foreach($obj as $key => $value ){
    echo $key.":".$value;
    echo "<br/>"; 
}
?>

输出结果

五、数组的增删查改

5-1.数组尾部增加元素array_push()

php 复制代码
<?php
$key = ['name', 'age', 'sex'];
#尾部添加元素
array_push($key,'address');
$value = ['张san','16','女'];
array_push($value,'泰山');
$obj=array_combine($key,$value);
foreach($obj as $key => $value ){
    echo $key.":".$value;
    echo "<br/>"; 
}
?>

输出结果

5-2.数组删除元素unset

参数为key; 直接使用unset(obj),obj被清空;直接使用unset($obj['张san']),数组无影响,因为找不到对应的张san的key

php 复制代码
<?php
$key = ['name', 'age', 'sex'];
#尾部添加元素
array_push($key,'address');
$value = ['张san','16','女'];
array_push($value,'泰山');
$obj=array_combine($key,$value);

#删除元素,参数为key; 直接使用unset($obj),$obj被清空;直接使用unset($obj['张san']),数组无影响,因为找不到对应的张san的key
unset($obj['name']);
foreach($obj as $key => $value ){
    echo $key.":".$value;
    echo "<br/>"; 
}
?>

输出结果

5-3.数组查询,通过值的查询,返回对应的key

php 复制代码
<?php
$key = ['name', 'age', 'sex'];
#尾部添加元素
array_push($key,'address');
$value = ['张san','16','女'];
array_push($value,'泰山');
$obj=array_combine($key,$value);
unset($obj['name']);
echo array_search('女',$obj)."<br>";

foreach($obj as $key => $value ){
    echo $key.":".$value;
    echo "<br/>"; 
}
?>

输出结果

5-4.数组修改,没啥用,替换后不会修改原值,只能重新赋值【 a 1 = a r r a y r e p l a c e ( a1=array_replace( a1=arrayreplace(a1,$a2);】

php 复制代码
<?php 
$a1=array("red","green");
$a2=array("blue","yellow");
var_dump($a1);
echo '<br>';
var_dump(array_replace($a1,$a2));
var_dump($a1);
?>

输出结果

5-5.函数搜索数组中是否存在指定的值【in_array】

php 复制代码
<?php
$key = ['name', 'age', 'sex'];
#尾部添加元素
array_push($key,'address');
$value = ['张san','16','女'];
array_push($value,'泰山');

$replace = array('李四','18','男','华山');
$value=array_replace($value,$replace);
$obj=array_combine($key,$value);

var_dump(in_array('男',$obj));
?>

输出结果

相关推荐
ONLYOFFICE2 小时前
【技术教程】如何将文档编辑器集成至用PHP编写的Web应用程序中
编辑器·php·onlyoffice
悠悠~飘3 小时前
php学习(第五天)
学习·php
技术猿1887027835113 小时前
PHP 与 WebAssembly 的 “天然隔阂”
开发语言·php·wasm
小*-^-*九16 小时前
php 使用html 生成pdf word wkhtmltopdf 系列2
pdf·html·php
catchadmin17 小时前
PHP serialize 序列化完全指南
android·开发语言·php
Q_Q196328847517 小时前
python+springboot+uniapp微信小程序题库系统 在线答题 题目分类 错题本管理 学习记录查询系统
spring boot·python·django·uni-app·node.js·php
悠悠~飘18 小时前
php学习(第四天)
php·apache
武汉唯众智创21 小时前
云数据中心网络优化实训系统:构建新一代云计算人才实训平台
网络·云计算·php·数字孪生·云数据中心网络优化实训系统·云计算孪生
Q_Q19632884751 天前
python+springboot大学生心理测评与分析系统 心理问卷测试 自动评分分析 可视化反馈系统
开发语言·spring boot·python·django·flask·node.js·php
互联网动态分析1 天前
PHP:从入门到实战的全面指南
php