php array函数
<?php
/*
* Created on 2011-5-11
* author 孤独求学人
*/
/*
* $array 要分割的数组
* $size 分割成的数组长度
*/
function arrayChunk($array,$size){
if(!is_array($array)){
//return $array."不是数组";
return;
}else{
$nums = count($array);
if($size > $nums){
//return "分割数组长度大于原来数组的长度";
return;
}else{
return $array = array_chunk($array,$size);
}
}
}
/*$array = array('a','b','c');
$size = 2;
$a = arrayChunk($array,$size);
print_r($a);*/
/* -- -------------------------------------------------- />
/*
* array_combine -- 创建一个数组,用一个数组的值作为其键名,另一个数组的值作为其值
*/
function arrayCombine($array1,$array2){
if(!is_array($array1) || !is_array($array2)){
return;
}
if(count($array1) == count($array2)){
return $new_array = array_combine($array1,$array2);
}else{
return;
}
}
/*$array1 = array('1','2','3');
$array2 = array('a','b','c');
$new_array = arrayCombine($array1,$array2);
var_dump($new_array);*/
/*
* 统计数组中所有的值出现的次数
*/
function arrayCountValues($array){
if(is_array($array)){
return $array = array_count_values($array);
}else{
return;
}
}
/*$array = array('a','b','e','a','e','b','w','y','u','p','q');
$test = arrayCountValues($array);
print_r($test);*/
//array_filter -- 用回调函数过滤数组中的单元
function odd($var){//奇数
return ($var%2==1);
}
function even($var){//偶数
return ($var%2==0);
}
/*$array1 = array ("a"=>1, "b"=>2, "c"=>3, "d"=>4, "e"=>5);
$array2 = array (6, 7, 8, 9, 10, 11, 12);
echo "Odd :\n";
print_r(array_filter($array1, "odd"));
echo "Even:\n";
print_r(array_filter($array2, "even"));*/
/*
* array_flip -- 交换数组中的键和值
* $var 如果同一个值出现了多次,则最后一个键名将作为它的值,所有其它的都丢失了。
*/
function arrayFlip($var){
if(is_array($var)){
return $trans = array_flip($var);
}
}
/* $trans = array ("a" => 1, "b" => 2, "c" => 3);
print_r(arrayFlip($trans));*/
/*
* 在数组头部插入一个或多个单元
*/
function arrayUnshift($array,$values){
if(is_array($array)){
if(!is_array($values)){
array_unshift($array,$values);
return $array;
}else{
foreach($values as $key=>$val){
array_unshift($array,$val);
}
return $array;
}
}
}
/* $array = array('a','b','c');
$values = array('1','2','3');
print_r(arrayUnshift($array,$values));*/
/*
* 去除数组中重复的值,接受 array 作为输入并返回没有重复值的新数组。
*/
function arrayUnique($array){
if(is_array($array)){
array_unique($array);
return $array;
}
}
/*$input = array ("a" => "green", "red", "b" => "green", "blue", "red");
print_r(arrayUnique($input));*/
/*
* array_pop 将数组最后一个单元弹出(出栈)
*/
function arrayPop($array){
if(is_array($array)){
array_pop($array);
return $array;
}
}
/*$array = array('1','2','3','4');
print_r(arrayPop($array));*/
/*
* array_shift -- 将数组开头的单元移出数组
*/
function arrayShift($array){
if(is_array($array)){
array_shift($array);
return $array;
}
}
/*$array = array('a','b','c');
print_r(arrayShift($array));*/
//array_map -- 将回调函数作用到给定数组的单元上
/*
* 查找两个数组的交集
* array_intersect -- 计算数组的交集
* array_intersect() 返回一个数组,该数组包含了所有在 array1 中也同时出现在所有其它参数数组中的值。注意键名保留不变。
*/
function arrayIntersect($array1,$array2){
if(!is_array($array1) || !is_array($array2)){
return;
}else{
$new_array = array_intersect($array1,$array2);
return $new_array;
}
}
/* $array1 = array ("a" => "green", "red", "blue");
$array2 = array ("b" => "green", "yellow", "red");
print_r(arrayIntersect($array1,$array2));*/
?>
标签: arrayShift arrayIntersect arrayChunk
热门日志
分类
- Django(4)
- ssdb(1)
- Mac(7)
- C(1)
- memcache(1)
- Python(32)
- Vim(8)
- sed(2)
- ansible(3)
- awk(4)
- shell(3)
- about(1)
- git(9)
- bat(4)
- svn(0)
- docker(1)
- Tornado(1)
- go(2)
- 架构(18)
- Vue(1)
- game(2)
- Html(6)
- Java(8)
- Mysql(37)
- Ajax(2)
- Jsp(1)
- Struts(8)
- Linux(72)
- JavaScript(39)
- Staruml(0)
- Mouth(1)
- Php(102)
- Windows(8)
- Message(48)
- Lua(10)
- Compute(1)
- Redis(7)
- Nginx(12)
- Jquery(1)
- Apache(1)
- cocos2d-x(8)