1.array_reverse -
php实现数组倒序的函数
array_reverse -- 返回一个单元顺序相反的数组
说明
array array_reverse ( array array [, bool preserve_keys] )
array_reverse() 接受数组 array 作为输入并返回一个单元为相反顺序的新数组,如果 preserve_keys 为 TRUE 则保留原来的键名。
例 1. array_reverse() 例子
<?php
$input = array("php", 4.0, array("green", "red"));
$result = array_reverse($input);
$result_keyed = array_reverse($input, TRUE);
?>
这将使 $result 和 $result_keyed 具有相同的单元,但是注意键名的区别。$result 和 $result_keyed 的打印输出显示分别为:
Array
(
[0] => Array
(
[0] => green
[1] => red
)
[1] => 4
[2] => php
)
Array
(
[2] => Array
(
[0] => green
[1] => red
)
[1] => 4
[0] => php
)
2.abs
abs() 函数返回一个数的绝对值。
<?php
echo(abs(6.7));
echo(abs(-3));
echo(abs(3));
?>
输出:
6.7
3
3
3.array_reverse
array_reverse -- 返回一个单元顺序相反的数组
说明
array array_reverse ( array array [, bool preserve_keys] )
array_reverse() 接受数组 array 作为输入并返回一个单元为相反顺序的新数组,如果 preserve_keys 为 TRUE 则保留原来的键名。
例 1. array_reverse() 例子
<?php
$input = array("php", 4.0, array("green", "red"));
$result = array_reverse($input);
$result_keyed = array_reverse($input, TRUE);
?>
这将使 $result 和 $result_keyed 具有相同的单元,但是注意键名的区别。$result 和 $result_keyed 的打印输出显示分别为:
Array
(
[0] => Array
(
[0] => green
[1] => red
)
[1] => 4
[2] => php
)
Array
(
[2] => Array
(
[0] => green
[1] => red
)
[1] => 4
[0] => php
)
4.jQuery中的数组倒序(与3对应)
演示:
jquery 数组 倒序 var mem = [1, 2, 3]; 倒序后 var men1=[3,2,1];
<script type="text/javascript">
$(function(){
var mem = [1, 2, 3];
var men1=mem.reverse();
})
</script>
5.array_filter()
array_filter() 依次将 array 数组中的每个值传递到 callback 函数。如果 callback 函数返回 TRUE,则 array 数组的当前值会被包含在返回的结果数组中。数组的键名保留不变。
如果没有提供 callback 函数,array_filter() 将删除 array 中所有等值为 FALSE 的条目.这也就是过滤数组空白元素的精华所在.
如下例:
Php代码
- <?php
- $entry = array(
- 0 => 'k686绿色软件',
- 1 => false,
- 2 => 1,
- 3 => null,
- 4 => '',
- 5 => 'http://www.k686.com',
- 6 =>'0'
- );
- print_r(array_filter($entry));
- ?>
<?php$entry = array( 0 => 'k686绿色软件', 1 => false, 2 => 1, 3 => null, 4 => '', 5 => 'http://www.k686.com', 6 =>'0' );print_r(array_filter($entry));?>
上面代码输出结果为:
Array
(
[0] => k686绿色软件
[2] => 1
[5] => http://www.k686.com
)
可以看出,false,null,和真正的''空白以及0都被过滤了,而且数组的下标没有改变.
这样就引申出来一个新问题,如果我想对array_filter()处理过的新数组的键名序列化成0,1,2,3这样的怎么办呢?这在数组比较中是很有用的,那么需要用到 php的sort()函数.-》6
6.
bool sort ( array &array [, int sort_flags] )
本函数对数组进行排序。当本函数结束时数组单元将被从最低到最高重新安排。
注意: 本函数为 array 中的单元赋予新的键名。这将删除原有的键名而不仅是重新排序。
如果成功则返回 TRUE,失败则返回 FALSE。
也可以使用array_values将数组中所有的值并给其建立数字索引的。
array
array_values ( array input )
array_values() 返回 input 数组中所有的值并给其建立数字索引。
例子 1. array_values() 例子
<?php
$array = array ("size" => "XL", "color" => "gold");
print_r(array_values ($array));
?>
上例将输出:
Array
(
[0] => XL
[1] => gold
)
Php代码
- <?php
- $my_array = array("0" => "k686绿色软件", "2" => "1", "5" => "http://www.k686.com");
- sort($my_array);
- print_r($my_array);
- ?>
<?php$my_array = array("0" => "k686绿色软件", "2" => "1", "5" => "http://www.k686.com");sort($my_array);print_r($my_array);?>
输出结果为:
Php代码
- Array
- (
- [0] => 1
- [1] => http://www.k686.com
- [2] => k686绿色软件
- )
Array( [0] => 1 [1] => http://www.k686.com [2] => k686绿色软件)
有序化以后就可以进行大小比较了,这在纯数字且需要比较大小的数字中是十分有效的.
7.array_search(value,array,strict)
array_search() 函数与 in_array() 一样,在数组中查找一个键值。如果找到了该值,匹配元素的键名会被返回。如果没找到,则返回 false。
在 PHP 4.2.0 之前,函数在失败时返回 null 而不是 false。
如果第三个参数 strict 被指定为 true,则只有在数据类型和值都一致时才返回相应元素的键名。
<?php
$a=array("a"=>"Dog","b"=>"Cat","c"=>"Horse");
echo array_search("Dog",$a);
?>
输出:
a