好文档 - 专业文书写作范文服务资料分享网站

PHP从入门到精通(免费)

天下 分享 时间: 加入收藏 我要投稿 点赞

10.数组建新索引排序:

10.1使用函数sort对数组元素按顺向排序,即按字母由前向后或按数字由小到大排序。该函数的语法如下所示。

bool sort(array &$arr [,int $sort_flag]); 该函数接受一个数组作为输入参数,如果处理成功,该函数返回TRUE,否则,该函数返回FALSE。该函数将会删除所要排序的数组原有的索引值,从而为该数组使用新的索引值。

10.2使用函数rsort对数组元素做逆向排序,即按字母从后到前或按数字由大到小排序。该函数的语法如下所示。

bool rsort(array &$arr [,int $sort_flag]);

该函数接受一个数组作为输入参数,如果处理成功,函数返回TRUE,否则返回FALSE。该函数将会删除所要排序的数组原有的索引值,从而为该数组使用新的索引值。 11.数组保持原索引的排序:

asort:该函数对数组元素进行排序,并且保持数组的原索引关系不变。该函数仍然对数组元素按顺向排序。如果处理成功,该函数返回TRUE,否则返回FALSE。

ksort:该函数对数组元素按索引名顺序排序,并且保持数组的原索引关系不变,如果处理成功该函数返回TRUE,否则返回FALSE。该函数主要用于关联数组。

$planet1 = array( 'Earth', 'Venus', 'Mars', 'Jupiter', 'Saturn' );

$planet2 = array( 'X'=>'Earth', 'Y'=>'Venus', 'Z'=>'Mars', 'A'=>'Jupiter', 'B'=>'Saturn' );

asort($planet1); ksort($planet2);

echo '使用函数asort对数组元素排序:'; echo '
';

foreach($planet1 as $key => $value) {

echo 'planet1['.$key.']='.$value; echo '
'; echo '
'; }

echo '
';

echo '使用函数ksort对数组元素排序:'; echo '
';

foreach($planet2 as $key => $value) {

echo 'planet2['.$key.']='.$value; echo '
'; echo '
'; }

?> 效果如下:

12.数组的随机排序

PHP提供一个随机排序数组元素的函数shuffle(),该函数的语法如下所示。 bool shuffle (array $array)

该函数为参数数组$array中的元素赋予新的键名,这将删除原有的键名而不仅仅是重新排序。如果执行成功该函数返回TRUE。

13.数组的反向排序

本节最后,介绍一个可以将数组元素按原顺序反向排序的函数,该函数是array_reverse()。其语法如下所示。 array array_reverse (array $array [, bool $preserve_keys])

该函数返回一个与原数组单元顺序相反的数组,原数组以参数$array传入该函数,该函数的第2个参数是可选的,如果第2个参数$preserve_keys设置为TRUE,则原数组的键名将会被保留。

14.重置一个数组

PHP中,重置一个数组指的是,将数组中的内部指针移动到该数组的第一个元素所在的单元。使用函数reset可以完成对数组的重置。该函数的语法如下所示。

mixed reset(array &$arr);

该函数接受一个数组类型的变量,将函数内部指针指向数组第一个单元,并将第一个单元的元素返回。如果数组为空,该函数返回FALSE。

$planet = array(

'Earth', 'Venus', 'Mars', 'Jupiter', 'Saturn' );

echo '当前元素是:'.current($planet); echo '
';

next($planet); next($planet);

echo '
';

echo '调用两次next函数之后,当前元素是:'.current($planet); echo '
';

reset($planet);

echo '
';

echo 'reset数组$planet后,当前元素是:'.current($planet); echo '
';

?> 效果如下:

15.用数组对变量赋值

PHP中,可以将数组的元素作为值赋给变量,使用语言结构list()可以完成这个功能。严格意义上讲,list()和array()一样,不是函数。

在下述程序中,通过list,将数组$planet的第一个元素’Earth’赋给了变量$no1,将第二个元素赋给了变量$no2,将第3个元素赋给了变量$no3。

$planet = array( 'Earth', 'Venus', 'Mars', 'Jupiter', 'Saturn' );

list($no1,$no2,$no3) = $planet; //将数组中的前3个元素分别赋给list结构中对应的3个变量

echo 'no1='.$no1; echo '
'; echo '
';

echo 'no2='.$no2;

echo '
'; echo '
';

echo 'no3='.$no3; echo '
'; echo '
'; ?> 效果如下:

16.快速创建数组

函数range()可以快速创建制定元素范围的数组。其语法如下所示。

array range(mixed $low, mixed $high [, number $step])

函数range()返回一个数组,其中元素为参数从$low到$high的序列,包括它们本身。例如range(1,9)相当于array(1,2,3,4,5,6,7,8,9),如果$low>$high,则序列将从$high到$low。该函数的第3个参数$step是可选的,如果给出了step的值,它将被作为元素之间的跨度值。step应该为正值。如果未指定,step则默认为1。

echo '

';  

$arr1 = range(5,10); print_r($arr1);

$arr2 = range('a','f'); print_r($arr2);

$arr3 = range(2,10,2); print_r($arr3); ?>

效果如下;

17.压入和弹出数组元素

这里所说的压入是指,向数组的末尾增加一个元素。而弹出是指,将数组中的最后一个元素取出。PHP提供两个函数分别完成这两个功能,这两个函数是array_push()和array_poo()。需要注意的是,使用本函数后会重置

数组指针,相当于使用了函数reset()。

18.改变数组字符索引名的大小写

PHP提供了一个函数,可以将以字符串作为数组索引(键名)的大小写全部更换,这个函数是array_change_key_case(),该函数的语法如下所示。 array array_change_key_case(array $input [, int $case])

函数array_change_key_case()将参数$input数组中的所有索引改为全小写或大写。可选参数$case用来指定大小写转换方式,它为两个常量值:CASE_UPPER和CASE_LOWER。没有指定该参数时,该函数使用的默认值是CASE_LOWER。

$olympic = array( 'Barcelona'=>1992, 'AtLanTa'=>1996, 'sydney'=>2000, 'AthEns'=>2004, 'BEIJING'=>2008 );

echo '原数组:'; echo '

'; 

print_r($olympic); echo '

';

$nol = array_change_key_case($olympic, CASE_UPPER); echo '
';

echo '调用array_change_key_case()之后:'; echo '

'; print_r($nol); ?> 

效果如下:

19.交换数组索引和元素

PHP中的数组可以通过函数实现索引和元素的交换,这对程序实现某些操作带来极大的便利,这个函数就是array_flip();

$olympic = array( 'Barcelona'=>1992, 'Atlanta'=>1996, 'Sydney'=>2000, 'Athens'=>2004,

PHP从入门到精通(免费)

10.数组建新索引排序:10.1使用函数sort对数组元素按顺向排序,即按字母由前向后或按数字由小到大排序。该函数的语法如下所示。boolsort(array&$arr[,int$sort_flag]);该函数接受一个数组作为输入参数,如果处理成功,该函数返回TRUE,否则,该函数返回FALSE。该函数将会删除所要排序的数组原有的索引
推荐度:
点击下载文档文档为doc格式
27we59ju8j4n25q6n2e0
领取福利

微信扫码领取福利

微信扫码分享