PHP之数组学习

今天学习了数组,可以说是PHP的数据应用中较重要的一种方式。PHP的数组函数众多,下面是我学习的小结,借此记之,便于以后鉴之……
  一、数组定义:
  数组的定义使用 array()方式定义,可以定义空数组:


代码如下:

<?php
$number = array(1,3,5,7,9);
//定义空数组
$result = array();
$color =array("red","blue","green");
//自定义键值
$language = (1=>"English",3=>"Chinese",5=>"Franch");
//定义二维数组
$two = array(
"color"=>array("red","blue"), //用逗号结尾
"week"=>array("Monday","Friday") //最后一句没有标点
);
?>

二、创建数组:
  创建数组包含的函数有compact()、
    1.compact()函数——将一个或多个变量(包含数组)转换为数组:
      array compact ( mixed $varname [, mixed $... ] )  


代码如下:

<?PHP
$number = "1,3,5,7,9";
$string = "I'm PHPer";
$array = array("And","You?");
$newArray = compact("number","string","array");
print_r ($newArray);
?>

compact()函数用于将两个或多个变量转换为数组,当然也包含数组变量。其参数是变量的名称而非带有$全名。
      相反的函数是extract()作用顾名思义就是将数组转换为单个的字符串,键值作为其字符串名称,数组值作为字符串的值。
      运行结果:


代码如下:

Array ( [number] => 1,3,5,7,9 [string] => I'm PHPer [array] => Array ( [0] => And [1] => You? ) )

2.array_combine()——将两个数组重组成一个数组,一个作键值一个做的值:
      array array_combine ( array $keys , array $values )


代码如下:

<?PHP
$number = array("1","3","5","7","9");
$array = array("I","Am","A","PHP","er");
$newArray = array_combine($number,$array);
print_r ($newArray);
?>

array_combine函数不多说了,谁看了都明白
      运行结果:

Array ( [1] => I [3] => Am [5] => A [7] => PHP [9] => er )
    3.range()函数——创建指定范围的数组:
       不多说了,直接上实例——


代码如下:

<?PHP
$array1 = range(0,100,10);//0为起始值,100为结束值,10为步进值(默认步进值为1).
print_r($array1);
echo"<br />";
$array2 = range("A","Z");
print_r($array2);
echo "<br />";
$array3 = range("z","a");
print_r($array3);
?>

range()函数的默认步进值是1!
      运行结果:


代码如下:

Array ( [0] => 0 [1] => 10 [2] => 20 [3] => 30 [4] => 40 [5] => 50 [6] => 60 [7] => 70 [8] => 80 [9] => 90 [10] => 100 )
Array ( [0] => A [1] => B [2] => C [3] => D [4] => E [5] => F [6] => G [7] => H [8] => I [9] => J [10] => K [11] => L [12] => M [13] => N [14] => O [15] => P [16] => Q [17] => R [18] => S [19] => T [20] => U [21] => V [22] => W [23] => X [24] => Y [25] => Z )
Array ( [0] => z [1] => y [2] => x [3] => w [4] => v [5] => u [6] => t [7] => s [8] => r [9] => q [10] => p [11] => o [12] => n [13] => m [14] => l [15] => k [16] => j [17] => i [18] => h [19] => g [20] => f [21] => e [22] => d [23] => c [24] => b [25] => a )

4.array_fill()函数——填充数组函数:


代码如下:

<?PHP
$array = range(1,10);
$fillarray = range("a","d");
$arrayFilled = array_fill(0,5,$fillarray);//这里的$fillarray可以是字符串,如"test".
echo "<pre>";
print_r ($arrayFilled);
echo "</pre>";
$keys = array("string","2",9,"SDK","PK");
$array2 = array_fill_keys($keys,"testing");
echo "<pre>";
print_r ($array2);
echo "</pre>";
?>

运行结果:


代码如下:

Array
(
[0] => Array
(
[0] => a
[1] => b
[2] => c
[3] => d
)
[1] => Array
(
[0] => a
[1] => b
[2] => c
[3] => d
)
[2] => Array
(
[0] => a
[1] => b
[2] => c
[3] => d
)
[3] => Array
(
[0] => a
[1] => b
[2] => c
[3] => d
)
[4] => Array
(
[0] => a
[1] => b
[2] => c
[3] => d
)
)
Array
(
[string] => testing
[2] => testing
[9] => testing
[SDK] => testing
[PK] => testing
)

二、数组的遍历:
    1.foreach遍历:
       foreach (array_expression as $value){}
       foreach (array_expression as $key => $value){}
      闲话少说,上实例:


代码如下:

<?PHP
$speed = array(50,120,180,240,380);
foreach($speed as $keys=>$values){
echo $keys."=>".$values."<br />";
}
?>

运行结果:


代码如下:

0=>50
1=>120
2=>180
3=>240
4=>380

2.while循环遍历:
      while循环遍历一般结合list函数,以下是实例


代码如下:

<?PHP
$staff = array(
array("姓名","性别","年龄"),
array("小张","男",24),
array("小王","女",25),
array("小李","男",23)
);
echo "<table border=2>";
while(list($keys,$value) = each($staff)){
list($name,$sex,$age) = $value;
echo "<tr><td>$name</td><td>$sex</td><td>$age</td></tr>";
}
echo "</table>";
?>

运行结果:


















姓名 性别 年龄
小张 24
小王 25
小李 23
3.for循环遍历:


代码如下:

<?PHP
$speed = range(0,220,20);
for($i =0;$i<count($speed);$i++) {
echo $speed[$i]." ";
}
?>

运行结果:


代码如下:

0 20 40 60 80 100 120 140 160 180 200 220

(0)

相关推荐

  • PHP遍历二维数组的代码

    一开始打算用foreach来历遍,但是发现没有成功,oo不过关,没办法oo写······ 研究后决定用for循环,演示代码如下: 复制代码 代码如下: <?php $blog=array( array( "titledata"=>"titleMM", "bodydata"=>"bodyMM" ), array( "titledata"=>"titleGG", &q

  • php小技巧 把数组的键和值交换形成了新的数组,查找值取得键

    复制代码 代码如下: $cityname = array_flip($city_DB[name]); //把数组的键和值交换形成了新的数组 $city_name = array_search($city_id,$cityname,true); //查找值取得键

  • php中用数组的方法设置cookies

    复制代码 代码如下: <?php         function set_cronology($name,$value,$duration=7){                 $duration=time()+(3600*24*$duration);                 $max_stored_values=5;                 if(isset($_COOKIE[$name])){                         foreach($_COOKI

  • PHP学习之数组的定义和填充

    PHP的数组,说白了,就是关联数据每一条数组都是以[索引,值]的形式保存的.其中索引默认是以0开始的数字.在未指定索引时,PHP会从0开始自动生成索引.当指定一个索引,PHP会从你指定索引最大正整数的下一个整数开始.如果你指定的是小数,PHP会取整数部分做为索引. 另外说说数组其它一些小东西: array()可以声明一个空数组: array[] = $value 在数组存在时,追加一个数据:在数组不存时,生成一个数组,并追加数据. array[$index] = $value 在数组存在时,追加

  • PHP学习之数组值的操作

    1. 值的析取PHP中,用list来析取数组中的值,如list($a, $b) = $array.如果list中的值多于数组个数,list中多余的值会设为NULL.也可以用逗号来跳过数组中的值,如list($a, ,$b) = $array. 2.划分数组如果想取得子数组,可以用array_slice(array, offset, length);来取得.它返回一个新的下标从0开始的数组.如果原数组的下标是字符串,好像是没有什么意义的,最好不要用,可以用array_splice来取得子串. 3.

  • PHP学习笔记之数组篇

    一.如何定义数组:在PHP中创建数组主要有两种方式,下面就让我们来看看如何创建一个数组 (1)直接给每个元素赋值的方法创建数组. 格式为:$arrayname[key]=value; 其中arrayname为数组的名字,key为数组的元素的键,value为元素的值.键可以是0,1,2,3这一类数字,也可以是字符串.如下所示: 复制代码 代码如下: 1 <?php 2 //用1,2,3的数值作为数组的键 3 echo '<p>数组$array1的键值为:</p>'; 4 $ar

  • php中显示数组与对象的实现代码

    1. 使用 print_r ( $array/$var ) print 是打印的意思,而r则取自Array的单词,那么该函数的功能就是打印数组内容,它既可以打印数组内容,也可以打印普通的变量. print_r ($_REQUEST) ; print_r ($_GET) ; /* 打印使用GET方法传递的表单内容*/ print_r($_POST) ; /* 打印使用表单POST方法传递过的数组内容*/ 2. 使用 var_dump ($object/$array/$var) var 代表变量(V

  • C语言数组学习之特殊矩阵的压缩存储

    目录 1.数组的定义 数组与线性表的关系 2.数组的存储结构 习题1 3.对称矩阵 概念 存储方法选择 习题1 习题2 4.三角矩阵 概念 存储方法选择 5.三对角矩阵 概念 存储方法选择 习题1 6.稀疏矩阵 概念 存储方法选择 首先最开始我们先回忆一下数组的概念 1.数组的定义 数组是由n个相同类型的数据元素构成的有限序列,每个数据元素称为一个数组元素,每个元素在n个线性关系中的序号称为该元素的下标,下标的取值范围称为数组的维界. 数组与线性表的关系 数组是线性表的推广 一维数组可以视为一个

  • JS中Array数组学习总结

    引用类型分为Object类型(所谓的对象),Array类型(本文谈的数组),Function类型等. 那么,数组是干啥的呢?在我看来,它是用来保存数据的. 一.声明一个数组: 1.构造函数 var colors=new Array():简写的话可以省略new,即var colors=Array(); 2.数组字面量 var colors=["black","green","pink"]; 二.读取和设置数组的值: 读取:colors[x];参数x

  • PHP之数组学习

    今天学习了数组,可以说是PHP的数据应用中较重要的一种方式.PHP的数组函数众多,下面是我学习的小结,借此记之,便于以后鉴之-- 一.数组定义: 数组的定义使用 array()方式定义,可以定义空数组: 复制代码 代码如下: <?php $number = array(1,3,5,7,9); //定义空数组 $result = array(); $color =array("red","blue","green"); //自定义键值 $la

  • C# 泛型数组学习小结

    C# 泛型和数组在 C# 2.0 中,下限为零的一维数组自动实现 IList<T>.这使您可以创建能够使用相同代码循环访问数组和其他集合类型的泛型方法.此技术主要对读取集合中的数据很有用.IList<T> 接口不能用于在数组中添加或移除元素:如果试图在此上下文中调用 IList<T> 方法(如数组的 RemoveAt),将引发异常.下面的代码示例演示带有 IList<T> 输入参数的单个泛型方法如何同时循环访问列表和数组,本例中为整数数组. C# 泛型和数组

  • 整理Javascript数组学习笔记

    1.什么是数组 数组是一个值的集合,每个值都有一个索引号,从0开始,每个索引都有一个相应的值,根据需要添加更多数值. <script type="text/javascript"> var myarr=new Array(); //定义数组 myarr[0]=80; myarr[1]=60; myarr[2]=99; document.write("第一个人的成绩是:"+myarr[0]); document.write("第二个人的成绩是:&

  • Perl中的列表和数组学习笔记

    一.列表 列表是包含在括号里的一序列的值,可以为任何数值,也可为空,如:(1, 5.3 , "hello" , 2),空列表:(). 注:只含有一个数值的列表(如:(43.2) )与该数值本身(即:43.2 )是不同的,但它们可以互相转化或赋值.列表例: 复制代码 代码如下: (17, $var, "a string")     (17, 26 << 2)     (17, $var1 + $var2) ($value, "The answer

  • PHP 数组学习排序全接触第1/2页

    array_values($arr) array 返回数组所有元素 复制代码 代码如下: <?php $arr = array("a", "b", "c"); $arr = array_flip($arr); //反转数组的下标和值现在的$arr = array(0, 1, 2); $arr = array_values($arr); //返回数组$arr中的所有元素 print_r($arr); //结果: array(0, 1, 2);

  • C语言的数组学习入门之对数组初始化的操作

    数组在所有的语言中,以C最为简单,就是一起始地址,外加一数组的长度,而且基本上没有任何功能可言.然而,在所有的数组使用中,却是C的这种简单的数组形式,以其灵活性和效率,让人惊叹. C数组从逻辑上讲,是分形一致的(想不到其他词来形容了),分形的意思,就是部分与整体保持一致的构造形式,也即是数组的任何一部分也都是数组,比如一整型数组{1,2,3,4,5},连续取出其中任一连续的部分,都可以看成是一个数组,{2,3}是数组,{1,2,3}是数组,{4,5}也都是数组,差别只在于数组的起始地址和元素的个

  • javascript 数组学习资料收集

    在JavaScript中,创建一个数组可以使用 new Array,如下几种语法都是正确的: arrayObj = new Array() 创建一个数组. arrayObj = new Array([size]) 创建一个数组并指定长度,注意不是上限,是长度. arrayObj = new Array([element0[, element1[, ...[, elementN]]]]) 创建一个数组并赋值. arrayObj = [element0, element1, ..., element

  • C#数组学习相关资料整理

    数组概述 C# 数组从零开始建立索引,即数组索引从零开始.C# 中数组的工作方式与在大多数其他流行语言中的工作方式类似.但还有一些差异应引起注意. 声明数组时,方括号 ([]) 必须跟在类型后面,而不是标识符后面.在 C# 中,将方括号放在标识符后是不合法的语法. int[] table; // not int table[]; 另一细节是,数组的大小不是其类型的一部分,而在 C 语言中它却是数组类型的一部分.这使您可以声明一个数组并向它分配 int 对象的任意数组,而不管数组长度如何. 复制代

随机推荐