PHP基础(009)---数组array
代码一:(指定数组的索引)
1 <?php 2 $arr = array("1"=>"好","2"=>"好","3"=>"学","4"=>"习"); 3 print_r($arr); //打印数组元素 4 echo "<br/>"; 5 echo $arr[1]; 6 echo $arr[2]; 7 echo $arr[3]; 8 echo $arr[4]; 9 ?>
代码二:(二维数组)
<?php $str = array ( "书籍"=>array ("文学","历史","地理"), "体育用品"=>array ("m"=>"足球","n"=>"篮球"), "水果"=>array ("橙子",8=>"葡萄","苹果") ); print_r ( $str) ; //输出数组结构 ?> output: Array ( [书籍] => Array ( [0] => 文学 [1] => 历史 [2] => 地理 ) [体育用品] => Array ( [m] => 足球 [n] => 篮球 ) [水果] => Array ( [0] => 橙子 [8] => 葡萄 [9] => 苹果 ) )
代码三:(使用foreach遍历数组)
<?php $url = array('baidu'=>'www.baidu.com', 'sina'=>'www.sina.com', '编程资源网'=>'www.bc110.com', ); foreach ( $url as $value ) { echo $value.'<br/>'; } ?> //output: www.baidu.com www.sina.com www.bc110.com
代码四:(使用list()函数遍历数组)
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 2 <html> 3 <head> 4 <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> 5 <title>应用list()函数遍历数组</title> 6 </head> 7 8 <body> 9 <form name="form1" method="post"> 10 <table width="323" border="1" cellpadding="1" cellspacing="1" bordercolor="#66CC33" bgcolor="#FFFFFF"> 11 <tr> 12 <td width="118" height="24" align="right" bgcolor="#CCFF33">用户名:</td> 13 <td width="192" height="24" bgcolor="#CCFF33"><input name="user" type="text" class="inputcss" id="user" size="24"></td> 14 </tr> 15 <tr> 16 <td height="24" align="right" bgcolor="#CCFF33">密 码:</td> 17 <td height="24" bgcolor="#CCFF33"><input name="pwd" type="password" class="inputcss" id="pwd" size="24"></td> 18 </tr> 19 <tr align="center" bgcolor="#CCFF33"> 20 <td height="24" colspan="2"><input name="submit" type="submit" value="登录"></td> 21 </tr> 22 </table> 23 </form> 24 <?php 25 //输出用户登录信息 26 while(list($name,$value)=each($_POST)){ 27 if($name!="submit"){ 28 echo "$name=$value<br>"; 29 } 30 } 31 ?> 32 </body> 33 </html>
each()函数用于返回当前指针位置的数组值,并将指针推进一个位置。
if($name!="submit") ---是过滤掉提交按钮的值
output:

代码五:(合并数组array_merge(),当有相同键值时就合并;array_merge_recursive()与array_merge()不同,有相同的键值时也保留在新的数组中。)
1 <?php 2 $str1 = array ("图书"=>"PHP") ; 3 $str2 = array ("网络类","定价","图书"=>"PHP程序开发范例宝典","PHP"=>"95","元") ; 4 $result = array_merge ( $str1,$str2 ) ; 5 print_r ( $result ) ; //Array ( [图书] => PHP程序开发范例宝典 [0] => 网络类 [1] => 定价 [PHP] => 95 [2] => 元 ) 6 ?>
代码六:(字符串与数组的转换: 使用explode()将字符串转换成数组)
1 <?php 2 $str = "时装、体闲、职业装"; //定义一个字符串 3 $strs = explode("、", $str); //应用explode()函数将字符串转换成数组 4 print_r($strs); //输出数组元素: Array ( [0] => 时装 [1] => 体闲 [2] => 职业装 ) 5 ?>
补充示例(动态生成多选按钮)
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 2 <html> 3 <head> 4 <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> 5 <title>应用explode()函数添加的投票选项</title> 6 <style type="text/css"> 7 <!-- 8 .style1 {color: #FF0000} 9 --> 10 </style> 11 </head> 12 13 <body> 14 <table width="400" border="0" cellspacing="0" cellpadding="0"> 15 <tr> 16 <td><form name="form1" method="post" action=""> 17 <table width="400" border="1" cellpadding="0" cellspacing="1" bordercolor="#FF9900" bgcolor="#CCFF66"> 18 <tr align="center"> 19 <td width="98" height="120">添加投票选项:</td> 20 <td width="223" height="120"><p> 21 <textarea name="content" cols="30" rows="5" id="content"></textarea> 22 <br> 23 <span class="style1">注意:每个选项间用*分隔</span></p></td> 24 <td width="61" height="120"><input type="Submit" name="Submit" value="提交"></td> 25 </tr> 26 </table> 27 </form></td> 28 </tr> 29 <tr> 30 <td><table width="400" border="1" cellpadding="0" cellspacing="1" bordercolor="#FF9900" bgcolor="#CCFF66"> 31 <tr align="center"> 32 <td width="98" height="30">投票选项:</td> 33 <td width="223" height="30"> 34 <?php 35 error_reporting(7); 36 if($_POST[Submit]!=""){ 37 $content=$_POST[content]; 38 $data=explode("*",$content); 39 while(list($name,$value)=each($data)){ 40 echo '<input type="checkbox" name="checkbox" value="checkbox">'; 41 echo $value."\n"; 42 } 43 } 44 ?> 45 </td> 46 <td width="61" height="30"> </td> 47 </tr> 48 </table></td> 49 </tr> 50 </table> 51 <p> </p> 52 </body> 53 </html>
代码七:(字符串与数组的转换: 使用implode()将数组转换成一个新字符串)
1 <?php 2 $str=array( 网址,'www.baidu.com',服务电话,"027-8497243",56); 3 echo implode(" ",$str); //以空格作为分隔符,并输出新的字符串 4 ?>
代码八:(统计数组中的元素个数: count(),COUNT_RECURSIVE()多维数组个数统计)
1 <?php 2 $array = array("php" => array("PHP","PHP程序开发","PHP数据库手册"), 3 "asp" => array("ASP经验技巧宝典"), 4 "Java"=>array("c"=>array("c","c++","c#"), 5 "b"=>array(".net","ASP.NET")) 6 ); //声明一个三维数组 7 echo count($array,COUNT_RECURSIVE); //递归统计数组元素的个数 8 print_r($array); 9 ?>
代码九:(数组排序:sort(),rsort())
sort()函数区分大小写,所有大写字母都排在小写字母的前面,这个函数还有第二个参数可以传递SORT_NUMERIC/SORT_STRING/SORT_REGULAR(默认值).
略...
代码十:(关联数组排序: ksort(),asort())
ksort()按照键值排序。
略...
浙公网安备 33010602011771号