程序员人生 网站导航

Php入门教程一之PHP 数组用法

栏目:php教程时间:2013-12-22 22:46:12

在php中数组是一个很重要的数据类型他可以存储不同类型的数据,相对于其它简单的整型,字符型只能存放单一的数据要强很多,下面我来介绍php数组用法.PHP数组可以说非常重要的知识之一,能够在单独的变量名中存储一个或多个值.

什么是数组?

在使用 PHP 进行开发的过程中,会需要创建许多相似的变量.无需很多相似的变量,你可以把数据作为元素存储在数组中.数组中的元素都有自己的 ID,因此可以方便地访问它们.

有三种数组类型:

数值数组

带有数字 ID 键的数组

关联数组

数组中的每个 ID 键关联一个值

多维数组

包含一个或多个数组的数组

数值数组

数值数组存储的每个元素都带有一个数字 ID 键.可以使用不同的方法来创建数值数组:

例子1

在这个例子中,会自动分配 ID 键:

实例代码如下:

  1. $names = array("Peter","Quagmire","Joe");  

例子 2

在这个例子中,我们人工分配的 ID 键:

实例代码如下:

  1. $names[0] = "Peter";  
  2.  $names[1] = "Quagmire";  
  3.  $names[2] = "Joe"
可以在脚本中使用这些 ID 键:

实例代码如下:

  1. <?php 
  2. $names[0] = "Peter"
  3. $names[1] = "Quagmire"
  4. $names[2] = "Joe"
  5. echo $names[1] . " and " . $names[2] . " are "$names[0] . "'s neighbors"
  6. ?> 

以上代码的输出:

1 Quagmire and Joe are Peter's neighbors 

关联数组

关联数组,它的每个 ID 键都关联一个值.在存储有关具体命名的值的数据时,使用数值数组不是最好的做法.通过关联数组,我们可以把值作为键,并向它们赋值.

例子 1

在本例中,我们使用一个数组把年龄分配给不同的人:

实例代码如下:

  1. $ages = array("Peter"=>32, "Quagmire"=>30, "Joe"=>34); 

例子 2

本例与例子 1 相同,不过展示了另一种创建数组的方法:

实例代码如下:

  1. $ages['Peter'] = "32"
  2. $ages['Quagmire'] = "30"
  3. $ages['Joe'] = "34"

可以在脚本中使用 ID 键:

实例代码如下:
 
  1. <?php 
  2. $ages['Peter'] = "32"
  3. $ages['Quagmire'] = "30"
  4. $ages['Joe'] = "34"
  5. echo "Peter is " . $ages['Peter'] . " years old."
  6. ?> 

以上脚本的输出:

Peter is 32 years old.

多维数组

在多维数组中,主数组中的每个元素也是一个数组.在子数组中的每个元素也可以是数组,以此类推.

例子 1

在本例中,我们创建了一个带有自动分配的 ID 键的多维数组:

实例代码如下:

  1. $families = array 
  2.  
  3.   "Griffin"=>array 
  4.   ( 
  5.   "Peter"
  6.   "Lois"
  7.   "Megan" 
  8.   ), 
  9.   "Quagmire"=>array 
  10.   ( 
  11.   "Glenn" 
  12.   ), 
  13.   "Brown"=>array 
  14.   ( 
  15.   "Cleveland"
  16.   "Loretta"
  17.   "Junior" 
  18.   ) 
  19. ); 

如果输出这个数组的话,应该类似这样:

  1. Array 
  2. [Griffin] => Array 
  3.   ( 
  4.   [0] => Peter 
  5.   [1] => Lois 
  6.   [2] => Megan 
  7.   ) 
  8. [Quagmire] => Array 
  9.   ( 
  10.   [0] => Glenn 
  11.   ) 
  12. [Brown] => Array 
  13.   ( 
  14.   [0] => Cleveland 
  15.   [1] => Loretta 
  16.   [2] => Junior 
  17.   ) 

例子 2

让我们试着显示上面的数组中的一个单一的值:

实例代码如下:
 
  1. echo "Is " . $families['Griffin'][2] .  
  2. " a part of the Griffin family?"

以上代码的输出:

Is Megan a part of the Griffin family?

PHP方面的内容,就为大家简单的分享一下,希望大家在修改WordPress主题的时候有帮助.磊子也是边学边做,有很多地方自己也不是非常的了解,希望自己也有所提高.

数组元素的显示

在如上使用的无论$people[2]也好,无论$peoples['cs']也好,都只是输出已知的明确位置的数组元素值,如何快速输出所有或部分的数组元素,使用循环语句无疑是最快的方法.

实例代码如下:
 
  1. <?php 
  2. $people=array('name','sex','nation','birth'); 
  3. for ($i=0;$i<4;$i++) 
  4.     echo "$people[$i] "
  5. ?> 

除了使用了解循环次数的for循环以外,还可以使用对循环次数无须要求的foreach语句.

实例代码如下:
 
  1. <?php 
  2. $people=array('name','sex','nation','birth'); 
  3. foreach($people as $xiangmu
  4.     echo $xiangmu
  5. ?> 

数组遍历

用foreach来访问, 遍历的顺序是固定的么? 以什么顺序遍历呢?

实例代码如下:

  1. <?php 
  2. $arr['laruence'] = 'huixinchen'
  3. $arr['yahoo']    = 2007; 
  4. $arr['baidu']    = 2008; 
  5. foreach ($arr as $key => $val) { 
  6. //结果是什么? 
  7. }< li> 

又比如:

  1. <?php 
  2. $arr[2] = 'huixinchen'
  3. $arr[1]  = 2007; 
  4. $arr[0]  = 2008; 
  5. foreach ($arr as $key => $val) { 
  6. //现在结果又是什么? 
  7. }< li> 
------分隔线----------------------------
------分隔线----------------------------

最新技术推荐