最新更新 sitemap 网站制作设计本站搜索
网页设计
国外网站 韩国网站 个人主页 手提袋设计 CSS 网页特效 平面设计 网站设计 Flash CMS技巧 服装网站 php教程 photoshop 画册 服务器选用 数据库 Office
虚拟主机 域名注册 云主机 网页设计 客服QQ:8208442
当前位置:首页 > 编程开发 > php教程

PHP编程中“数组”的基础知识

日期:07-27    来源:中国设计秀    作者:cnwebshow.com

5pR中国设计秀
print $planets[2][0];5pR中国设计秀
$planets2 = array("MM"=>array("AA"=>1,"SS"=>2),5pR中国设计秀
"NN"=>array("DD"=>3,"FF"=>4),5pR中国设计秀
"BB"=>array("GG"=>6,"HH"=>7,"PP"=>array("haha!!!!")),5pR中国设计秀
"VV"=>array("JJ"=>6,"KK"=>7,"LL"=>array("one","two")));5pR中国设计秀
print $planets2["VV"]["LL"][0];5pR中国设计秀
---------------------输出结果----------------------------------------5pR中国设计秀
BBone5pR中国设计秀
---------------------------------------------------------------------5pR中国设计秀
5.使用循环访问数组5pR中国设计秀
遍历数组的方法有很多(使用while,for循环)或者foreach语句,最容易的是foreach 语句5pR中国设计秀
$length = array(0,107,202,400,475);5pR中国设计秀
//将厘米转换为寸5pR中国设计秀
for($i=0;$i<5;$i++)5pR中国设计秀
{5pR中国设计秀
echo ($length[$i]/3);5pR中国设计秀
}5pR中国设计秀
$j=0;5pR中国设计秀
while(isset($length[$j]))5pR中国设计秀
{5pR中国设计秀
echo ($length[$j]/3);5pR中国设计秀
$j++;5pR中国设计秀
}5pR中国设计秀
foreach($length as $cm)5pR中国设计秀
{5pR中国设计秀
echo ($cm/3);5pR中国设计秀
}5pR中国设计秀
---------------------输出结果----------------------------------------5pR中国设计秀
05pR中国设计秀
35.66666666675pR中国设计秀
67.33333333335pR中国设计秀
133.3333333335pR中国设计秀
158.3333333335pR中国设计秀
05pR中国设计秀
35.66666666675pR中国设计秀
67.33333333335pR中国设计秀
133.3333333335pR中国设计秀
158.3333333335pR中国设计秀
05pR中国设计秀
35.66666666675pR中国设计秀
67.33333333335pR中国设计秀
133.3333333335pR中国设计秀
158.3333333335pR中国设计秀
5pR中国设计秀
---------------------------------------------------------------------5pR中国设计秀
foreach还可以迭代关联数组的值5pR中国设计秀
$sound = array("cow"=>"moo","dog"=>"woof",5pR中国设计秀
"pig"=>"oink","duck"=>"quack");5pR中国设计秀
foreach ($sound as $animal=>$noice)5pR中国设计秀
{5pR中国设计秀
echo "$animal 得叫声是这样的 $noice $noice......";5pR中国设计秀
}5pR中国设计秀
---------------------输出结果----------------------------------------5pR中国设计秀
cow 的叫声是这样的 moo moo......5pR中国设计秀
dog 的叫声是这样的 woof woof......5pR中国设计秀
pig 的叫声是这样的 oink oink......5pR中国设计秀
duck 的叫声是这样的 quack quack......5pR中国设计秀
5pR中国设计秀
---------------------------------------------------------------------5pR中国设计秀
5pR中国设计秀
6.使用数组指针5pR中国设计秀
与存储在数组中的键和关联值一起,PHP还拥有一个指向数组当前元素的内部索引,5pR中国设计秀
有几个函数使用并更新该数组索引来提供对数组元素的访问5pR中国设计秀
$a = array("a","b","c","d","e","f");5pR中国设计秀
echo current($a);5pR中国设计秀
each($a);5pR中国设计秀
key($a);//目前数组的指针,返回其索引5pR中国设计秀
echo current($a);//当前元素的值5pR中国设计秀
each($a);//返回当前元素的值并将内部索引指向下一个元素5pR中国设计秀
each($a);5pR中国设计秀
echo current($a);5pR中国设计秀
next($a);//指向下一个元素5pR中国设计秀
echo current($a);5pR中国设计秀
prev($a);//指向上一个元素5pR中国设计秀
echo current($a);5pR中国设计秀
end($a);//指向最后一个元素5pR中国设计秀
echo current($a);5pR中国设计秀
key($a);5pR中国设计秀
echo current($a);5pR中国设计秀
---------------------输出结果----------------------------------------5pR中国设计秀
abdedff5pR中国设计秀
---------------------------------------------------------------------5pR中国设计秀
7.基本的数组函数5pR中国设计秀
integer count(mixed var)//在数组中返回元素的个数,也可用于任何的变量5pR中国设计秀
number max(array numbers)//返回数组中的最大值5pR中国设计秀
number min(array numbers)//返回数组中的最小值5pR中国设计秀
boolean in_array(mixed needle,array haystack[,bollean strict])//查找数组中的值,第三个参数可选,强制执行类型检查5pR中国设计秀
mixed array_search(mixed needle,array haystack[,boolean strict])//返回 键 而不是布尔值,5pR中国设计秀
找不到时返回false,找到的元素如果正好是第一个元素,则返回0,而PHP会自动转化为false所以需要使用===判断,如下5pR中国设计秀
$a = array("a","b","c","d","e","f");5pR中国设计秀
$index = array_search("a",$a);5pR中国设计秀
if($index === false)5pR中国设计秀
echo "在数组a中未发现字符'a'";5pR中国设计秀
else5pR中国设计秀
echo "Index = $index";5pR中国设计秀
---------------------输出结果----------------------------------------5pR中国设计秀
Index = 05pR中国设计秀
---------------------------------------------------------------------5pR中国设计秀
array array_reverse(array source[,bool preserve_keys])//逆转数组,生成一个新数组,可选参数为true时,保留索引和元素之间的关联5pR中国设计秀
$a = array("a","b","c","d","e","f");5pR中国设计秀
$newa = array_reverse($a);//直接翻转5pR中国设计秀
echo $newa[0];5pR中国设计秀
$newb = array_reverse($a,true);//依旧保留了索引和元素之间的关联5pR中国设计秀
echo $newb[0];5pR中国设计秀
---------------------输出结果----------------------------------------5pR中国设计秀
fa5pR中国设计秀
---------------------------------------------------------------------5pR中国设计秀
sort(array subject[,integer sort_flag])//根据 值 进行升序排列(在原数组中重新排列元素)5pR中国设计秀
rsort(array subject[,integer sort_flag])//根据 值 进行降序排列(在原数组中重新排列元素)5pR中国设计秀
可选参数可以指定为按数字方式SORT_NUMERIC还是字符串方式SORT_STRING或者通常的方式SORT_REGULAR排序5pR中国设计秀
sort()、rsort()可以用于关联数组,但是 键 将丢失5pR中国设计秀
asort(array subject[,integer sort_flag])//根据 值 进行升序排列(在原数组中重新排列元素),保持键值关联5pR中国设计秀
arsort(array subject[,integer sort_flag])//根据 值 进行降序排列(在原数组中重新排列元素),保持键值关联5pR中国设计秀
当asort() arsort()用于非关联数组时,元素按排序后的次序重新排列,但是访问元素的索引不改变5pR中国设计秀
integer ksort(ayyay subject [,integer sort_flag])//根据 键或索引 进行升序排列5pR中国设计秀
integer krsort(ayyay subject [,integer sort_flag])//根据 键或索引 进行降序排列5pR中国设计秀
usort(array subject, string compare_function)//根据用户定义排序,用户定义自己的排序规则函数,但函数必须符合5pR中国设计秀
uasort(array subject, string compare_function)//integer my_compare_function(mixed a, mixed b),a>b返回1,a uksort(array subject, string compare_function)//a等于b时返回05pR中国设计秀
$numbers = array(16,3,2,171,5,24,6,19);5pR中国设计秀
sort($numbers);5pR中国设计秀
foreach($numbers as $n)5pR中国设计秀
echo $n." ";5pR中国设计秀
$numbers = array(16,3,2,171,5,24,6,19);5pR中国设计秀
rsort($numbers);5pR中国设计秀
foreach($numbers as $n)5pR中国设计秀
echo $n." ";5pR中国设计秀
$numbers = array(16,3,2,171,5,24,6,19);5pR中国设计秀
sort($numbers,SORT_STRING);5pR中国设计秀
foreach($numbers as $n)5pR中国设计秀
echo $n." ";5pR中国设计秀
5pR中国设计秀
$a = array("o"=>"kk","e"=>"zz","z"=>"hh","a"=>"rr");5pR中国设计秀
asort($a);5pR中国设计秀
foreach ($a as $keyname=>$keyvalue)5pR中国设计秀
echo $keyvalue;5pR中国设计秀
5pR中国设计秀
$a = array("o"=>"kk","e"=>"zz","z"=>"hh","a"=>"rr");5pR中国设计秀
ksort($a);5pR中国设计秀
foreach ($a as $keyname=>$keyvalue)5pR中国设计秀
echo $keyvalue;5pR中国设计秀
5pR中国设计秀
//基于长度比较两个字符串5pR中国设计秀
function cmp_length($a,$b)5pR中国设计秀
{5pR中国设计秀
if(strlen($a) < strlen($b))5pR中国设计秀
return -1;5pR中国设计秀
if(strlen($a) > strlen($b))5pR中国设计秀
return 1;5pR中国设计秀
return 0;5pR中国设计秀
}5pR中国设计秀
$animals = array("cow","ox","monkey","mimi");5pR中国设计秀
usort($animals,"cmp_length");5pR中国设计秀
foreach($animals as $an)5pR中国设计秀
echo $an;5pR中国设计秀
---------------------输出结果----------------------------------------5pR中国设计秀
2 3 5 6 16 19 24 171 171 24 19 16 6 5 3 2 16 171 19 2 24 3 5 6 hhkkrrzzrrzzkkhhoxcowmimimonkey5pR中国设计秀
---------------------------------------------------------------------5pR中国设计秀
array_merge($a,$b)//组合数组,个人认为是比较有趣的函数之一,从两个数组生成一个数组,具有相同 键 的值会被覆盖5pR中国设计秀
////////////////////////////代码部分////////////////////////////////////////5pR中国设计秀
$a = array("name"=>"zhangsan",10,100);5pR中国设计秀
$b = array("name"=>"lisi",4,6,8);5pR中国设计秀
$c = array_merge($a,$b);5pR中国设计秀
var_dump($c);5pR中国设计秀
//////////////////////////////////////////////////////////////////////////5pR中国设计秀
---------------------输出结果----------------------------------------5pR中国设计秀
array(6) { ["name"]=> string(4) "lisi" [0]=> int(10) [1]=> int(100) [2]=> int(4) [3]=> int(6) [4]=> int(8) }5pR中国设计秀
---------------------------------------------------------------------5pR中国设计秀
array array_combine(array $a,array $b)//a数组的值为新数组的键,b数组的值为新数组的值,数组长度不同时,返回false5pR中国设计秀
////////////////////////////代码部分////////////////////////////////////////5pR中国设计秀
$a = array("name","math","china");5pR中国设计秀
$b = array("zhangsan",4,6);5pR中国设计秀
$c = array_combine($a,$b);5pR中国设计秀
var_dump($c);5pR中国设计秀
//////////////////////////////////////////////////////////////////////////5pR中国设计秀
---------------------输出结果----------------------------------------5pR中国设计秀
array(3) { ["name"]=> string(8) "zhangsan" ["math"]=> int(4) ["china"]=> int(6) }5pR中国设计秀

本文引用地址:/bc/article_58215.html
网站地图 | 关于我们 | 联系我们 | 网站建设 | 广告服务 | 版权声明 | 免责声明