搜索
首页后端开发PHP问题php有几种定义数组的方式

php有几种定义数组的方式

Jun 12, 2023 pm 02:04 PM
phpphp数组

php有五种定义数组的方式,分别是:1、使用array创建数组;2、使用“$arr[] = 'a';”方式创建数组;3、使用“array(1=>'jack',2=>'lucy',500=>'hcoder')”方式创建数组;4、使用“$arr[1] = 'jack';”方式创建数组;5、使用“$arr['name'] = '';”方式创建数组。

php有几种定义数组的方式

本教程操作环境:windows10系统、php8.1.3版本、DELL G3电脑。

在PHP以及其他程序语言程序设计中,经常会用到数组的创建,在前端开发中,js的数组创建可以由[]和new Array()直接创建和赋值。然而PHP创建数组的方法有哪些呢?在查阅资料并且网上收集整理总结了下:

QQ截图20230612135613.png

1. 使用array创建数组,是最常见和便捷的一个方式 :

$arr = array('a','b','c');
$arr[] = 'a' ; $arr[] = 'b' ; $arr[] = 'c';
$arr = array('name' => '关羽' , 'age' => 23 , 'sex' => '男');

2. 有时候需要创建一个长度为len的一个随机数组,所以就可以用range():

定义:array range(first,second,step) //first:元素最小值 second:元素最大值 step:元素步长(要增加的量)

$number = range(0,5);
print_r ($number);
   
//打印:Array ( [0] => 0 [1] => 1 [2] => 2 [3] => 3 [4] => 4 [5] => 5 )
   
$number = range(0,50,10);
print_r ($number);
   
//打印:Array ( [0] => 0 [1] => 10 [2] => 20 [3] => 30 [4] => 40 [5] => 50 )
   
$letter = range("a","d");
print_r ($letter);
   
//打印:Array ( [0] => a [1] => b [2] => c [3] => d )

3.当然,在某些特定需求下,需要把某些变量存入数组,这些变量的变量名转换成键名,变量值转换成键值(前提:该变量存在):

$firstname = "Peter";
$lastname = "Griffin";
$age = "38";
$result = compact("firstname", "lastname", "age");
print_r($result);
   
//打印: Array ( [firstname] => Peter [lastname] => Griffin [age] => 38 )
   
$firstname = "Peter";
$lastname = "Griffin";
$age = "38";
$name = array("firstname", "lastname");
$result = compact($name, "location", "age");
print_r($result);
   
//打印:Array ( [firstname] => Peter [lastname] => Griffin [age] => 38 )
//由于$location变量不存在,所以存入不了数组

4. 将两个数组合并为一个新的数组,第一个数组的值是新数组的键名,第二个数组里面的值是新数组的键值:定义:array_combine()函数可以将两个数组合并成一个新数组,其中的一个数组是键名,另一个数组的值为键值。

$a1=array("a","b","c","d");
$a2=array("Cat","Dog","Horse","Cow");
print_r(array_combine($a1,$a2));
   
//打印:Array ( [a] => Cat [b] => Dog [c] => Horse [d] => Cow )

5. 创建键值一样具有固定长度的数组:

定义:array_fill(start,number,value) //start:起始索引 number:值的个数 value:数组值

$a=array_fill(2,3,"Dog");
print_r($a);
   
//打印:Array ( [2] => Dog [3] => Dog [4] => Dog )

创建数组格式:

第1种格式

$数组名称 = array(‘值’, ‘值’, ‘值’,……);

此种格式没有指定数组内元素的键,PHP 会自动以数字的形式创建键,从 0 开始,依次累加。

调用数组的格式 : $数组名称[数字型键]

<?php
$arr = array(&#39;a&#39;,&#39;b&#39;,&#39;c&#39;); echo $arr[1]; //输出

 第2种格式

$数组名称[] = ‘值’;

$数组名称[] = ‘值’;

$数组名称[] = ‘值’;

……

此种格式同样没有指定数组内元素的键, PHP会自动以数字的形式创建键, 从 0开始,依次累加。

调用数组的格式 : $数组名称[数字型键];

<?php
$arr[] = &#39;a&#39;; $arr[] = &#39;b&#39;; $arr[] = &#39;c&#39;; echo $arr[1]; //输出b

第3种格式

$数组名称 = array(数字类型的键=> ‘值’, 数字类型的键 => ‘值’, 数字类型的键=> ‘值’,……);

调用格式 : $数组名称[数字类型的键];

<?php
$arr = array(1=>&#39;jack&#39;,2=>&#39;lucy&#39;,500=>&#39;hcoder&#39;); echo $arr[500]; //输出hcoder

此种格式采用整数作为数组的键,php 对数组的支持非常灵活,可以任意定义数组内的数字。

如果数组内出现了重复的键则最后出现的元素会覆盖前面的所有键,最后一个为有效值。

第4种格式

$数组名称[整数类型键] = ‘值’;

$数组名称[整数类型键] = ‘值’;

$数组名称[整数类型键] = ‘值’;

……

调用格式 : $数组名称[整数类型键];

<?php
$arr[1] = &#39;jack&#39;; $arr[2] = &#39;lucy&#39;; $arr[500] = &#39;hcoder&#39;; echo $arr[500]; //输出hcoder

第5种格式(关联数组)

$数组名称=array(‘字符串形式的键’=>’值’,‘字符串形式的键’=>’值’,……);

调用格式 : $数组名称[‘字符串形式的键’];

<?php
$arr = array(&#39;name&#39;=>&#39;张三&#39;, &#39;age&#39;=>18); echo $arr[&#39;age&#39;]; //输出18

第6种格式(关联数组)

$数组名称[ ‘字符串形式的键’]=>’值’;
$数组名称[ ‘字符串形式的键’]=>’值’;
……

调用格式 : $数组名称[‘字符串形式的键’];

<?php
$arr[&#39;name&#39;] = &#39;张三&#39;; $arr[&#39;age&#39;] = 18; echo $arr[&#39;age&#39;]; //输出18

简而言之 就是用 $a[] 和 $a=array()

以上是php有几种定义数组的方式的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

SecLists

SecLists

SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

Atom编辑器mac版下载

Atom编辑器mac版下载

最流行的的开源编辑器

EditPlus 中文破解版

EditPlus 中文破解版

体积小,语法高亮,不支持代码提示功能

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )专业的PHP集成开发工具

DVWA

DVWA

Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中