索引多维数组

An array is a group of similar types of variables. PHP provides function array() to create a PHP array.

数组是一组相似类型的变量。 PHP提供函数array()创建一个PHP数组。

PHP数组 (PHP Array)

There are three types of arrays in PHP.

PHP中存在三种类型的数组。

  1. Indexed arrays – Array with numeric indexes.索引数组 –具有数字索引的数组。
  2. Associative arrays – Array with key-value pairs, its similar to Map in java.关联数组 –具有键值对的数组,类似于Java中的Map。
  3. Multidimensional arrays – An array of arrays.多维数组 –数组数组。

PHP索引数组 (PHP Indexed arrays)

There are two ways to create indexed arrays.
– first way to use array() function without any index, index are assigned automatically starting from 0.
– second way to manually assign index and create the array.

有两种创建索引数组的方法。
–不使用任何索引使用array()函数的第一种方法,索引从0开始自动分配。
–手动分配索引并创建数组的第二种方法。

PHP count() function is used to get the length of an array. We can use for loop to loop through all the values of an indexed array.

PHP count()函数用于获取数组的长度。 我们可以使用for循环遍历索引数组的所有值。

Below code shows both the ways to create an indexed array and loop through them in PHP.

下面的代码显示了两种创建索引数组并在PHP中循环遍历的方法。

<?php
$colors = array("Red","Green","Blue");$colors1[0] = "Red";
$colors1[1] = "Green";$length = count($colors);
echo "colors array length=" . $length; // prints "colors array length=3"
echo "<br>";
echo "colors1 array length=" . count($colors1); // prints "colors1 array length=2"//looping an indexed array
for($i=0; $i<$length; $i++){echo $colors[$i];echo "<br>";
}
?>

PHP关联数组 (PHP Associative Arrays)

Associative arrays uses named keys for values and we can create them in similar way like indexed arrays. foreach is used to loop through an associative array.

关联数组对值使用命名键,我们可以像建立索引数组一样创建它们。 foreach用于遍历关联数组。

<?php$colors = array("0"=>"Red","1"=>"Green","2"=>"Blue");echo "0th element of array is " . $colors["0"];
echo "<br>";
//looping
foreach ($colors as $key=>$value){echo "Key=".$key." value=".$value;echo "<br>";
}
?>

output of above PHP script is:

上面PHP脚本的输出是:

0th element of array is Red
Key=0 value=Red
Key=1 value=Green
Key=2 value=Blue

PHP中的多维数组 (Multidimensional Array in PHP)

A multidimensional array is an array of arrays. We can create two-dimensional, three-dimensional and n-dimensional arrays using array function.

多维数组是数组的数组。 我们可以使用数组函数创建二维,三维和n维数组。

Each array within the multidimensional array can be either indexed array or associative array. We can use for loop for looping through indexed array and foreach for looping through associative array.

多维数组中的每个数组都可以是索引数组或关联数组。 我们可以使用for循环遍历索引数组,使用foreach遍历关联数组。

In below example, I am showing two-dimensional indexed arrays and mixture of indexed and associative array in multidimensional array.

在下面的示例中,我显示了二维索引数组以及多维数组中索引数组和关联数组的混合。

We can use print_r() or var_dump() function to print the human readable form of the array.

我们可以使用print_r()var_dump()函数来打印人类可读的数组形式。

<?php//Indexed two-dimensional array
$cars = array(array("Honda Accord", "V6", 30000),array("Toyota Camry", "LE", 24000),array("Nissan Altima", "V1"),);//printing array information
print_r($cars);
echo "<br>";
var_dump($cars);
echo "<br>";
//looping through two-dimensional indexed arrayfor($i=0;$i<count($cars);$i++){for($j=0;$j<count($cars[$i]);$j++){echo $cars[$i][$j] . " ";}echo "<br>";
}
echo "<br><br>";//Indexed Associative two-dimensional array
$cars = array(array("Name" => "Honda Accord", "Model" => "V6", "Cost" => 30000),array("Name" => "Toyota Camry", "Model" => "LE", "Cost" => 24000),array("Name" => "Nissan Altima", "Model" => "V1"),);//printing array information
print_r($cars);
echo "<br>";
var_dump($cars);
echo "<br>";//looping through two-dimensional indexed associative arrayfor($i=0;$i<count($cars);$i++){$c=0;foreach($cars[$i] as $key=>$value){$c++;echo $key."=".$value;if($c<count($cars[$i])) echo ",";}echo "<br>";
}
?>

The output of above PHP script is:

上面PHP脚本的输出为:

Array ( [0] => Array ( [0] => Honda Accord [1] => V6 [2] => 30000 ) [1] => Array ( [0] => Toyota Camry [1] => LE [2] => 24000 ) [2] => Array ( [0] => Nissan Altima [1] => V1 ) )
array(3) { [0]=> array(3) { [0]=> string(12) "Honda Accord" [1]=> string(2) "V6" [2]=> int(30000) } [1]=> array(3) { [0]=> string(12) "Toyota Camry" [1]=> string(2) "LE" [2]=> int(24000) } [2]=> array(2) { [0]=> string(13) "Nissan Altima" [1]=> string(2) "V1" } }
Honda Accord V6 30000
Toyota Camry LE 24000
Nissan Altima V1 Array ( [0] => Array ( [Name] => Honda Accord [Model] => V6 [Cost] => 30000 ) [1] => Array ( [Name] => Toyota Camry [Model] => LE [Cost] => 24000 ) [2] => Array ( [Name] => Nissan Altima [Model] => V1 ) )
array(3) { [0]=> array(3) { ["Name"]=> string(12) "Honda Accord" ["Model"]=> string(2) "V6" ["Cost"]=> int(30000) } [1]=> array(3) { ["Name"]=> string(12) "Toyota Camry" ["Model"]=> string(2) "LE" ["Cost"]=> int(24000) } [2]=> array(2) { ["Name"]=> string(13) "Nissan Altima" ["Model"]=> string(2) "V1" } }
Name=Honda Accord,Model=V6,Cost=30000
Name=Toyota Camry,Model=LE,Cost=24000
Name=Nissan Altima,Model=V1

In next posts, we will look into some common array functions.

在下一篇文章中,我们将研究一些常见的数组函数。

Earlier articles for PHP tutorial:

早期PHP教程文章:

  1. PHP Tutorial for Beginners – PHP Syntax, Comments, Variables and ScopePHP初学者教程– PHP语法,注释,变量和范围
  2. PHP Operators – Arithmetic, Comparison, Logical, Bitwise OperatorsPHP运算符–算术,比较,逻辑,按位运算符
  3. PHP if-else, Switch Case and Shorthand Ternary operatorPHP if-else,切换大小写和缩写三元运算符

翻译自: https://www.journaldev.com/1528/php-array-indexed-associative-multidimensional

索引多维数组

索引多维数组_PHP数组–索引,关联和多维相关推荐

  1. for循环 php 增加数组维数_PHP数组在循环中创建多维数组

    我有一个关联的多维数组,如下所示 $data = array(); $data = Array ( [0] => Array ( [class] => 1styear [branch] = ...

  2. php数组添加数组_PHP数组

    一.数组操作的基本函数 数组的键名和值 array_values($arr);获得数组的值  array_keys($arr);获得数组的键名  array_flip($arr);数组中的值与键名互换 ...

  3. php简单网站源码包含数组_PHP 数组

    PHP 数组 数组能够在单个变量中存储多个值: 实例 $cars=array("Volvo","BMW","Toyota"); echo & ...

  4. php 二维数组根据键值合并二维数组_php数组根据某键值,把相同键值的合并最终生成一个新的二维数组...

    匿名用户 1级 2013-12-29 回答 php数组根据某一个键值,把相同键值的合并生成一个新的二维数组 源数据: $infos = array( array( 'a' => 36, 'b' ...

  5. isset php 二维数组_php 数组去重,一维数组去重,二维数组去重

    php 数组去重 一维数组 方法1: array_unique($mobile_array); 方法2: $mobile_array = array_flip($mobile_array); $mob ...

  6. php 二维数组根据键值合并二维数组_php数组实现根据某个键值将相同键值合并生成新二维数组的方法详解...

    这篇文章主要介绍了php数组实现根据某个键值将相同键值合并生成新二维数组的方法,涉及php数组的遍历.赋值相关运算技巧,需要的朋友可以参考下 本文实例讲述了php数组实现根据某个键值将相同键值合并生成 ...

  7. php对象数组转数组_php 数组对象互相转换

    有时候会遇到php中对象和数组之间的互相转换 /** * 将对象转换为多维数组 * **/ function objectToArray($d) { if (is_object($d)) { // G ...

  8. php打印四行三列表格,php打印数组_php数组实例之表格状打印

    摘要 腾兴网为您分享:php数组实例之表格状打印,云端学习,洋游码头,央视影音,新东方等软件知识,以及cleverqq机器人,熊猫tv直播,造价通app,诺基亚手机解锁,qqtool,qq浏览器微,国 ...

  9. php 数组 js 数组_PHP数组转换为js数组

    背景: 当我们用mvc分层到时候,有时候需要初始化一些变量,并assign 至view的模版中,其中有一些是smarty这种引擎解析的php变量,有时候也需要来一发js解析的数组变量,以下例子就是简单 ...

最新文章

  1. 引用与传递——内存分析
  2. 第五篇:HMM 隐马尔可夫模型
  3. java多线程基础篇第二篇-volidate关键字
  4. php gif上传后不动,GIF图片上传后不动的解决办法
  5. 分享一个JDK1.8丢失数字精度的案例
  6. cmake + visual studio 配置出错的解决方法
  7. Think as developer, 从深入理解业务实现框架开始
  8. 谈了千百遍的缓存数据的一致性问题
  9. php基础教程 第十步 阶段性知识补充
  10. (干货)css常用技巧
  11. 【玩转数据系列三】利用图算法实现金融行业风控
  12. php源码无法安装mysql_linux中源码编译安装mysql常见错误
  13. 项目交接文档_项目管理反思
  14. 编程之美 4.6桶中取黑白球
  15. PAT (Basic Level) Practice1015 德才论
  16. 为什么visual的联机浏览功能不能用_Minecraft非正版联机教程
  17. win ollvm环境_【Win】Stata 14 安装教程
  18. 学了这么久的编程,编程语言创始人你知道几个?
  19. 腾讯将创办腾讯云启商学院,马化腾任荣誉院长
  20. Command rejected: Bad VLAN list

热门文章

  1. java内存管理的一些基础,内存溢出的解决方案
  2. CSS教程--CSS 属性选择器
  3. 使用Visual Studio.net调试javascript最方便的方法
  4. [转载] python--isalnum()函数
  5. [转载] python的系统模块_Python操作系统模块
  6. Dijkstra求最短路径例题
  7. Python安装numpy模块及pycharm配置
  8. UIImageView contentModel
  9. BZOJ2325[ZJOI2011]道馆之战——树链剖分+线段树
  10. 【图像处理】openCV库教程