php 数组取倒数10个,PHP array操作10个小技巧

其实任何一门计算机语言中对array(数组)的操作都是一门学问,PHP也不例外。下面笔者想向各位介绍关于PHP中array操作的10个小技巧及相关的函数。

1、向array中添加元素

php是一个弱类型语言。因此不必象c语言那样为php array声明长度。向其中添加元素的过程也是声明和初始化的过程。

$capitals = array(

'Alabama' => 'Montgomery',

'Alaska' => 'Juneau',

'Arizona' => 'Phoenix'

);

继续添加元素也很简单

$capitals['Arkansas'] = 'Little Rock';

如果不是关联数组而只是数字索引的数组可以使用array_push()和array_unshift()函数增加元素

2、从array中删除元素

从数组中移除元素可以使用unset() 函数

unset($capitals['California']);

也可以使用array_pop()或array_shift()函数从数组头或尾部顺序移除元素

3、array键值互换

如果希望新建数组的键是老数组的值而值是老数组的键,简而言之就是键值对调,则可以使用array_flip()函数完成操作

$capitals = array(

'Alabama' => 'Montgomery',

'Alaska' => 'Juneau',

'Arizona' => 'Phoenix'

);

$states = array_flip($capitals);

// $states = array(

// 'Montgomery' => string 'Alabama',

// 'Juneau' => string 'Alaska',

// 'Phoenix' => string 'Arizona'

// );

4、合并数组

如果希望将两个或多个数组合并成一个新的数组,array_merge()函数可以帮上这个忙^_^

$stateCapitals = array(

'Alabama' => 'Montgomery',

'Alaska' => 'Juneau',

'Arizona' => 'Phoenix'

);

$countryCapitals = array (

'Australia' => 'Canberra',

'Austria' => 'Vienna',

'Algeria' => 'Algiers'

);

$capitals = array_merge($stateCapitals, $countryCapitals);

5、修改array中的值

譬如希望将数组的中值全部改为小写后大写首字母,使用回调函数递归地对每个数组成员调用是个不错的方法,php中这个函数是php_map()

function capitalize($element)

{

$element = strtolower($element);

return ucwords($element);

}

$capitals = array(

'Alabama' => 'montGoMEry',

'Alaska' => 'Juneau',

'Arizona' => 'phoeniX'

);

$capitals = array_map("capitalize", $capitals);

6、根据array的键为数组排序

$capitals = array(

'Arizona' => 'Phoenix',

'Alaska' => 'Juneau',

'Alabama' => 'Montgomery'

);

ksort($capitals);

7、随机化array元素的顺序

shuffle() 和上面的ksort()函数恰恰相反,可以打乱数组现有的秩序,以达到随机化的目的。

$capitals = array(

'Arizona' => 'Phoenix',

'Alaska' => 'Juneau',

'Alabama' => 'Montgomery'

);

shuffle($capitals);

8、查找键或值是否存在

查找是否存在值使用in_array()函数

$capitals = array(

'Arizona' => 'Phoenix',

'Alaska' => 'Juneau',

'Alabama' => 'Montgomery'

);

if (in_array("Juneau", $capitals))

{

echo "Exists!";

} else {

echo "Does not exist!";

}

查找是否存在键使用array_key_exists()函数

$capitals = array(

'Arizona' => 'Phoenix',

'Alaska' => 'Juneau',

'Alabama' => 'Montgomery'

);

if (array_key_exists("Alaska", $capitals))

{

echo "Key exists!";

} else {

echo "Key does not exist!";

}

9、数组查找

这个是老生常谈了,基本上都用的到array_search()函数

$capitals = array(

'Arizona' => 'Phoenix',

'Alaska' => 'Juneau',

'Alabama' => 'Montgomery'

);

$state = array_search('Juneau', $capitals);

// $state = 'Alaska'

10、使用php标准函数库

一口气介绍这个多操作array的函数,如果您还觉得不过瘾,可以继续查看Standard PHP Library 中的内容^_^

$capitals = array(

'Arizona' => 'Phoenix',

'Alaska' => 'Juneau',

'Alabama' => 'Montgomery'

);

$arrayObject = new ArrayObject($capitals);

foreach ($arrayObject as $state => $capital)

{

printf("The capital of %s is %s
", $state, $capital);

}

// The capital of Arizona is Phoenix

// The capital of Alaska is Juneau

// The capital of Alabama is Montgomery

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值