既然数组创建并初始化了,然后进行一番操作后,就需要输出,将操作结果打印出来。那么PHP数组如何输出呢?下面本篇文章就来给大家介绍一下数组输出的几种方法:print_r()、var_dump()、echo/print。(附:PHP函数之array数组函数视频讲解)
1、使用print_r()输出数组
print_r()函数用于以更容易理解的形式打印变量,通过print_r()函数可以将整个数组的内容及结构进行输出,且会按照一定格式显示键和元素。
<?php header("Content-type:text/html;charset=utf-8"); $array = array ( array("姓名"=>"张三","年龄"=>25,"性别"=>"男"), array("姓名"=>"李四","年龄"=>21,"性别"=>"男"), array("姓名"=>"娜娜","年龄"=>22,"性别"=>"女") ); print_r($array); ?>
输出结果:
Array ( [0] => Array ( [姓名] => 张三 [年龄] => 25 [性别] => 男 ) [1] => Array ( [姓名] => 李四 [年龄] => 21 [性别] => 男 ) [2] => Array ( [姓名] => 娜娜 [年龄] => 22 [性别] => 女 ) )
是不是感觉输出结果太长,并不利用阅读。可以在print_r()输出语句前添加一段代码“echo '<pre>';”:
<?php header("Content-type:text/html;charset=utf-8"); $array = array ( array("姓名"=>"张三","年龄"=>25,"性别"=>"男"), array("姓名"=>"李四","年龄"=>21,"性别"=>"男"), array("姓名"=>"娜娜","年龄"=>22,"性别"=>"女") ); echo '<pre>'; print_r($array); ?>
这样输出的结果就更利于阅读,输出结果:
2、使用var_dump()输出数组
同print_r()函数类似,var_dump()函数也可以可以将整个数组的数据内容及结构进行输出。不过var_dump()比 print_r() 更强大,可以同时打印多个变量且给出变量的类型信息。
var_dump()函数可以输出变量的相关信息(类型与值),输出数组时,数组将递归展开值,通过缩进显示其结构。
<?php header("Content-type:text/html;charset=utf-8"); $array = array ( array("姓名"=>"张三","年龄"=>25,"性别"=>"男"), array("姓名"=>"李四","年龄"=>21,"性别"=>"男"), array("姓名"=>"娜娜","年龄"=>22,"性别"=>"女") ); var_dump($array); ?>
输出结果:
说明:
print_r() 和 var_dump() 函数一般是用于调试程序使用,更多情况是使用 echo 来输出具体的数组单元值。
3、使用echo/print输出数组
echo()用于输出一个或多个字符串。
严格来讲 echo 并不是一个函数,它实际上是一种语言结构;因此不一定必须使用小括号来指明参数,使用单引号、双引号也可以。
然而,如果向 echo() 传递一个以上的参数,那么就不能使用小括号了,因为将会生成解析错误。
print()和echo()有点类似(它实际上也是一种语言结构),但不同点是echo可以接受多个参数并且没有返回值,而print()只能接受一个参数并且有返回值。
使用echo/print进行数组输出时,只能对某数组中的某一元素进行输出。下面我们通过代码实例来具体看看:
<?php header("Content-type:text/html;charset=utf-8"); $array= array("香蕉","苹果","梨子","橙子","橘子","榴莲"); //输出语句 echo '$array[0] = '.$array[0].'<br>'; echo '$array[1] = '.$array[1].'<br>'; echo '$array[2] = '.$array[2].'<br>'; print '$array[3] = '.$array[3].'<br>'; print '$array[4] = '.$array[4].'<br>'; print '$array[5] = '.$array[5].'<br>'; ?>
输出:
$array[0] = 香蕉 $array[1] = 苹果 $array[2] = 梨子 $array[3] = 橙子 $array[4] = 橘子 $array[5] = 榴莲
“$数组变量名[下标]
”形式的语句是用来访问数组中元素的,以确定需要输出的元素。例如上面的例子中,“$array[0]
”就是访问数组中的第一个元素(索引数组数组的下标从零开始),因此“echo $array[0]
”语句可输出“香蕉
”。
而如果想要输出数组中的全部元素,需要借助循环语句,遍历数组,将数组中的元素一一输出。
下面就以foreach语句为例,来详细看看如何循环遍历数组,输出数组中的全部元素:(附视频教程:foreach循环)
<?php header("Content-type:text/html;charset=utf-8"); $array= array("香蕉","苹果","梨子","橙子","橘子","榴莲"); foreach ($array as $val){ // 遍历数组 //输出数组元素 echo $val."<br>"; } ?>
输出结果:
香蕉 苹果 梨子 橙子 橘子 榴莲