Sorting Array Values in PHP(数组排序)

yipeiwu_com7年前PHP代码库
复制代码 代码如下:

$full_name = array();
$full_name["Roger"] = "Waters";
$full_name["Richard"] = "Wright";
$full_name["Nick"] = "Mason";
$full_name["David"] = "Gilmour";

To sort this array, you just use the assort( ) function. This involves nothing more complex than typing the word asort, followed by round brackets. In between the round brackets, type in the name of your Associative array:
复制代码 代码如下:

asort($full_name);

The letter "a" tells PHP that the array is an Associative one. (If you don't have the "a" before "sort", your key names will turn in to numbers!). The "a" also tells PHP to sort by the Value, and NOT by the key. In our script above, the surnames will be sorted. If you want to sort using the Key, then you can use ksort() instead.

If you have a Scalar array (numbers as Keys), then you leave the "a" off. Like this:
复制代码 代码如下:

$numbers = array( );
$numbers[]="2";
$numbers[]="8";
$numbers[]="10";
$numbers[]="6";
sort($numbers);
print $numbers[0] ;
print $numbers[1];
print $numbers[2] ;
print $numbers[3];

The numbers are then sorted from lowest to highest. If you want to sort in reverse order then you need the following:

rsort( ) – Sorts a Scalar array in reverse order
arsort( ) - Sorts the Values in an Associative array in reverse order
krsort( ) - Sorts the Keys in an Associative array in reverse order

In the next part, we look at how to get a random value from an array.

相关文章

深入php中var_dump方法的使用详解

首先看看实例:复制代码 代码如下:<?php$a = "alsdflasdf;a";$b = var_dump($a);echo "<br>";//var_dump($...

php foreach 使用&amp;(与运算符)引用赋值要注意的问题

foreach 通过在 $value 之前加上 & 很容易就能修改数组的单元,如: PHP代码 复制代码 代码如下: foreach($arr as $value){ $value .=...

php 无限级 SelectTree 类

复制代码 代码如下:/* author: nick date: 2009.05.17 功能:生成SeletTree 属性: $result 结果集 $id_field 自身id字段 $p...

php中adodbzip类实例

本文实例讲述了php中adodbzip类程序代码。分享给大家供大家参考。具体如下: 复制代码 代码如下:<?php /**  * AdodbZip 1.1...

Linux fgetcsv取得的数组元素为空字符串的解决方法

但服务器上,很多使用Linux服务器,源程序使用UTF-8,这样很容易产生字符编码的问题. 如果仅仅将CSV文件转码为UTF-8,这样在Windows服务器上没有问题, 而在RedHat...