php数组操作
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第三讲数组
一、什么是数组
数组就是一组数据的集合,把一系列数据组织起来,形成一个可操作的整体。数组的每个实体都包含两项:键和值。
二、声明数据
在PHP中声明数组的方式主要有两种:
一是应用array()函数声明数组,
一是直接为数组元素赋值。
<1> array()函数用来新建一个数组。它接受一定数量用逗号分隔的key => value参数对。
array( [key=>] value, ... ) // key可以是数字或者字符串// value可以是任何值
如,
$array=array("1"=>"编","2"=>"程","3"=>"词","4"=>"典");
?>
<2>直接为数组元素赋值。
如果在创建数组时不知所创建数组的大小,或在实际编写程序时数组的大小可能发生变化,采用这种数组创建的方法较好。如,
$array[1]="I";
$array[2]="love";
$array[3]="PHP";
//print_r($array); //输出所创建数组的结构
?>
三、数组的类型
PHP支持两种数组:索引数组(indexed array)和联合数组(associative array),前者使用数字作为键,后者使用字符串作为键。
四、输出数组
1.在PHP中对数组元素输出,可以通过echo语句来实现,但这只能对数组中某一元素进行输出;要将数组结构输出则要使用print_r()函数,
其语法:print_r(mixed expression),参数expression为普通的整型、字符型或实型。变量则输出该变量本身,如果该参数为数组,则按一定键值和元素的顺序显示出该数组中的所有元素。
2.用foreach 循环显示数组元素:
$phpjc = array(
'word',
'excel',
'outlook',
'access'
);
foreach($phpjc as $software)
{
echo $software;
echo "
";
echo "
";
}
foreach($phpjc as $key=>$value)
{
echo $key.": ".$value;
echo "
";
echo "
";
}
?>
用print_r() 函数输出数组:
$phpjc = array(
'word',
'excel',
'outlook',
'access'
);
print_r($phpjc);
?>
输出:
Array
(
[0] => word
[1] => excel
[2] => outlook
[3] => access
)
?>
五、二维数组:
当一个数组的元素是一个一位数组时,则称之为二维数组。如,
$str = array (
"网络编程语言"=>array ("PHP","JSP","ASP"),
"体育项目"=>array ("m"=>"足球","n"=>"篮球"));
print_r ( $str) ;
?>
六、数组中函数的应用
1.count() 函数计算数组元素的个数
在PHP中,使用count()函数对数组中的元素个数进行统计,语法为:int coun(mixed array[,int mode]),其中参数array为必要参数,mode为可选参数,若选中COUNT——RECURSIVE(或1),本函数将递归地对数组数组。如,
$array = array("php" => array("PHP函数参考大全","PHP程序开发范例宝典","PHP数据库系统开发完全手册"),
"asp" => array("ASP经验技巧宝典")
); //声明一个二维数组
echo count($array,COUNT_RECURSIVE);//递归统计数组元素的个数,运行结果为6
?>
2.分割数组array_chunk()
定义和用法
array_chunk() 函数把一个数组分割为新的数组块。
其中每个数组的单元数目由 size 参数决定。最后一个数组的单元数目可能会少几个。
可选参数 preserve_key 是一个布尔值,它指定新数组的元素是否有和原数组相同的键(用于关联数组),还是从 0 开始的新数字键(用于索引数组)。默认是分配新的键。
语法
array_chunk(array,size,preserve_key)
例子:
$input_array = array('a', 'b', 'c', 'd', 'e');
print_r(array_chunk($input_array, 2));
print_r(array_chunk($input_array, 2, TRUE));
?>
3.合并数组array_merge()
定义和用法
array_merge() 函数把两个或多个数组合并为一个数组。
如果键名有重复,该键的键值为最后一个键名对应的值(后面的覆盖前面的)。如果数组是数字索引的,则键名会以连续方式重新索引。
注释:如果仅仅向 array_merge() 函数输入了一个数组,且键名是整数,则该函数将返回带有整数键名的新数组,其键名以 0 开始进行重新索引。(参见例子 2)
语法
array_merge(array1,array2,array3...)