php5中的数组怎么表示,PHP5中的一些数组函数的使用

昨天做的一个小项目,使用到了PHP5中的一些数组函数,觉得蛮好用的,这里就列出来,主要是和排序相关的,进行一些分析和说明:

/**

* 返回按照数组中特定的id作为key的数组,并且按照key的大小,从小到大进行排列,是为了方便上一条,下一条的需要

*/

public function getArrayOrderByKeyAsc()

{

//echo "getfactor";

$originalArray = $this->getOriginalArray();

$newArray = array();

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

//$tmpArr = array($value['id']=>Array("title"=>$value['title'],"time"=>$value['time']));

//print_r($tmpArr);

//$newArray = array_merge_recursive($newArray,$tmpArr);//array_push会重新生产key,按照数字自增的方式。

//array_unshift($newArray,array($value['id']=>Array("title"=>$value['title'],"time"=>$value['time'])));

$newArray[$value['id']] = array("title"=>$value['title'],"time"=>$value['time']);//最直接的方式是直接添加

}

//print_r($newArray);

//echo "after ksort()";

/**

* 按照key的值,从小到大进行排序

*/

ksort($newArray,SORT_NUMERIC);

return $newArray;

}

/**

* 按照指定的方法,对二维数组进行排序。其中$val1,$val2分别表示原二维数组中的两条记录。

* @param array $val1,$val2

* @return 一种比较方式产生的结果。比如是按照该一维数组的time字段进行字符串形式进行排序.

*/

function orderByTime($val1,$val2)

{

return -(strcmp($val1['time'],$val2['time']));

}

/**

* 用来返回按照时间倒序排列的,以id为作为数组的key的一部分元素。

* @param int $maxNum

*/

function getMaxPartArrayOrderByTime($maxNum)

{

$arr1 = $this->getArrayOrderByKeyAsc();

//print_r($arr1);

uasort($arr1,"orderByTime");

//print_r($arr1);

return array_slice($arr1,0,$maxNum,true);

}

/**

* 用来返回按照时间倒序排列的全部数组元素。

*/

function getArrayOrderByTimeDesc()

{

//print_r($arr1);

uasort($arr1,"orderByTime");

//print_r($arr1);

return $arr1;

}

ksort,按照key的值,从小到大进行排序;

uasort($arr1,"orderByTime");这个函数对二维,多维数组进行排序非常有帮助。对于二维数组的某个元素的值进行排序,

你只需要定义好排序方法就OK了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值