转载请标明出处:
http://blog.csdn.net/hai_qing_xu_kong/article/details/51635540
本文出自:【顾林海的博客】
数组就是一系列数据的集合,把一系列数据组织起来,形成一个可操作的整体。数组array是一组有序的变量,其中每个变量被称为一个元素。每个元素由一个特殊的标识符来区分,这个标识符称为键(也称为下标)。数组中的每个实体都包含两项:键和值。可以通过键值来获取相应数组元素,这些键可以是数值键或关联键。
如何声明数组?主要有两种方式:
array()函数声明数组的方式如下:
array array ( [mixed ...])
参数说明:
参数mixed的语法为key => value,多个参数mixed间用逗号分开,分别定义了索引和值。索引可以是字符串或数字。如果省略了索引,则会自动产生从0开始的整数索引。如果索引是整数,则下一个产生的索引将是目前最大的整数索引+1。如果定义了两个完全一样的索引,则后面一个会覆盖前一个。数组中的各数据元素的数据类型可以不同,也可以是数组类型。当mixed是数组类型时,就是二维数组
array()函数声明例子1:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"
/>
<title>PHP语言基础title>
head>
<body>
header("Content-Type:text/html; charset=gb2312");
$array=array("hello","PHP","bill");
print_r($array);
echo "
".$array[1];
?>
body>
html>
运行结果:
Array ( [0] => hello [1] => PHP [2] => bill )
PHP
array()函数声明例子2:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"
/>
<title>PHP语言基础title>
head>
<body>
Content-Type:text/html; charset=gb2312");
$array=array("a"=>"hello","b"=>"PHP","c"=>"bill");
print_r($array);
echo "
".$array["c"];
?>
body>
html>
运行结果:
Array ( [a] => hello [b] => PHP [c] => bill )
bill
直接为数组元素赋值:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"
/>
<title>PHP语言基础title>
head>
<body>
header("Content-Type:text/html; charset=gb2312");
$array[1]="hello";
$array["a"]="php";
$array["b"]="bill";
print_r($array);
echo "
".$array[1];
echo "
".$array["a"];
echo "
".$array["b"];
?>
body>
html>
运行结果:
Array ( [1] => hello [a] => php [b] => bill )
hello
php
bill
1.使用foreach结构遍历数组
遍历数组元素最常用的方法是使用foreach结构。foreach结构并非操作数组本身,而是操作数组的一个备份。
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"
/>
<title>PHP语言基础title>
head>
<body>
header("Content-Type:text/html; charset=gb2312");
$array=array("a"=>"hello","b"=>"PHP","c"=>"bill");
foreach($array as $item){
echo $item.'
';
}
?>
body>
html>
运行结果:
hello
PHP
bill
2.使用list()函数遍历数组
把数组中的值赋给一些变量。与array()函数类似,这不是真正的函数,而是语言结构。list()函数仅能用于数字索引的数组,且数字索引从0开始。
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"
/>
<title>PHP语言基础title>
head>
<body>
header("Content-Type:text/html; charset=gb2312");
$array=array("hello","PHP","bill");
list($a,$b,$c)=$array;
echo $a;
?>
body>
html>
运行结果:
hello
1、使用explode()函数将字符串转换成数组
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"
/>
<title>PHP语言基础title>
head>
<body>
header("Content-Type:text/html; charset=gb2312");
$str="a,b,c,d,e";
$array=explode(",",$str);
foreach($array as $item){
echo $item;
}
?>
body>
html>
运行结果:
abcde
2、使用implode()函数将数组转换成一个新字符串
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"
/>
<title>PHP语言基础title>
head>
<body>
header("Content-Type:text/html; charset=gb2312");
$array=array("hello","php","bill");
$new_array=implode("-",$array);
echo $new_array;
?>
body>
html>
运行结果:
hello-php-bill
使用count()函数对数组中的元素个数进行统计。
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"
/>
<title>PHP语言基础title>
head>
<body>
header("Content-Type:text/html; charset=gb2312");
$array=array("hello","php","bill");
echo count($array);
?>
body>
html>
运行结果:
3
array_search()函数,在数组中搜索给定的值,找到后返回键名,否则返回false。
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"
/>
<title>PHP语言基础title>
head>
<body>
header("Content-Type:text/html; charset=gb2312");
$array=array("a"=>"hello","b"=>"php","c"=>"bill");
echo array_search("php",$array);
?>
body>
html>
运行结果:
b
通过函数array_pop()获取数组中的最后一个单元。array_pop()函数获取并返回数组的最后一个单元,并将数组的长度减1,如果数组为空(或者不是数组)将返回null。
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"
/>
<title>PHP语言基础title>
head>
<body>
header("Content-Type:text/html; charset=gb2312");
$array=array("a"=>"hello","b"=>"php","c"=>"bill");
$item=array_pop($array);
echo $item.'
';
print_r($array);
?>
body>
html>
运行结果:
bill
Array ( [a] => hello [b] => php )
通过array_push()函数向数组中添加元素。array_push()函数将数组当成一个栈,将传入的变量压入该数组的末尾,该数组的长度将增加入栈变量的数目,返回数组新的单元总数。
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"
/>
<title>PHP语言基础title>
head>
<body>
header("Content-Type:text/html; charset=gb2312");
$array=array("hello","php","bill");
array_push($array,"java","c#");
print_r($array);
?>
body>
html>
运行结果:
Array ( [0] => hello [1] => php [2] => bill [3] => java [4] => c# )
通过array_unique()函数删除数组中重复的元素。array_unique()函数,将值作为字符串排序,然后对每个值只保留第一个键名,忽略所有后面的键名,即删除数组中重复的元素。
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"
/>
<title>PHP语言基础title>
head>
<body>
header("Content-Type:text/html; charset=gb2312");
$array=array("hello","php","bill","java","php");
$result=array_unique($array);
print_r($result);
?>
body>
html>
运行结果:
Array ( [0] => hello [1] => php [2] => bill [3] => java )