您好,欢迎访问一九零五行业门户网

php常用函数-数组 php常用字符串函数 php常用类库 php常用英语单

学习php的过程中,整理的一些常用的函数,这是数组函数。
dog [1] => cat [2] => horse )
//array_combine():生成一个数组,用一个数组的值作为键名,另一个数组的值作为值
$a1 = array(a,b,c,d);
$a2 = array(cat,dog,horse,cow);
print_r(array_combine($a1,$a2)); //array ( [a] => cat [b] => dog [c] => horse [d] => cow )
//range():创建并返回一个包含指定范围的元素的数组。
$number = range(0,50,10); //(0:序列的第一个值;50:序列结束值;10:每次的步长)
print_r ($number); //array ( [0] => 0 [1] => 10 [2] => 20 [3] => 30 [4] => 40 [5] => 50 )
//compact():创建一个由参数所带变量组成的数组
$firstname = peter;
$lastname = griffin;
$age = 38;
$result = compact(firstname, lastname, age);
print_r($result); //array ( [firstname] => peter [lastname] => griffin [age] => 38 )
//array_fill():用给定的值生成数组
$a = array_fill(2,3,dog); //(2:填冲的第一个键值;3:填冲的数值;dog:填冲的内容)
print_r($a); //array ( [2] => dog [3] => dog [4] => dog )
//array_chunk():把一个数组分割为新的数组块
$a = array(a=>cat,b=>dog,c=>horse,d=>cow);
print_r(array_chunk($a,2)); //array([0] => array([a]=>cat [b]=>dog) [1] => array([c]=>horse [d]=>cow))
//array_merge():把两个数组合并为一个数组
/***********************与array_combine区别***********************
array_merge():直接合并数组;array_combine():根据参数顺序第一组为键,第二组为值;*/
echo ;
$a1 = array(a=>horse,b=>dog);
$a2 = array(c=>cow,b=>cat);
print_r(array_merge($a1,$a2)); //array ( [a] => horse [b] => dog [c] => cow [d] => cat )
//array_diff():返回两个数组的差集(键名保持不变)
$a1 = array(8=>cat,1=>dog,2=>horse,3=>lion);
$a2 = array(4=>horse,5=>dog,6=>bird,7=>pig);
print_r(array_diff($a1,$a2)); //array ( [8] => cat [3] => lion )
print_r(array_diff($a2,$a1)); //array ( [6] => bird [7] => pig )
//array_intersect():返回两个或多个数组的交集数组
$a1 = array(0=>cat,1=>dog,2=>horse);
$a2 = array(3=>horse,4=>dog,5=>fish);
print_r(array_intersect($a1,$a2)); // array ( [1] => dog [2] => horse )
print_r(array_intersect($a2,$a1)); // array ( [3] => horse [4] => dog )
//array_serach在数组中搜索给定的值,如果成功则返回相应的键名(失败返回false)
$a = array(a=>dog,b=>cat,c=>horse);
echo array_search(dog,$a); //a
//array_slice():在数组中根据条件取出一段值,并返回(键名保持不变)
echo
;
$a = array(a=>dog,b=>cat,c=>horse,d=>bird);
print_r(array_slice($a,1,2)); //1:从键值(相当于索引键为1的位置开始取);2,取两个
//array ( [b] => cat [c] => horse )
//array_splice():把数组中的一部分去掉,并用其它的值取代
$a1 = array(4=>dog,'b'=>cat,'c'=>horse,6=>bird);
$a2 = array(3=>tiger,5=>lion);
array_splice($a1,1,2,$a2);
/* $a1:被替换的数组(最后被输出的数组);1:按索引键的1位置开始替换;2:替换两个;$a2:替换数组,加到$a1中去 */
print_r($a1); //array ( [0] => dog [1] => tiger [2] => lion [3] => bird )
//array_splice($a1,0,2,$a2);
//print_r($a1); // array ( [0] => tiger [1] => lion [2] => horse [3] => bird )
//array_sum():计算数组中所有值的和
$a = array(0=>5,1=>15,2=>25);
echo array_sum($a); //45
//in_array():检查数组中是否存在某个值
$animals = array(dog, cat, cow, horse);
if (in_array(cow,$animals)){
echo match found;
}else{
echo match not found;
}
//array_key_exists():检查给定的键名是否存在于数组中( 参数1:键名 参数2:数组 ):返回bool值
$animals = array(a=>dog, b=>cat, c=>cow, d=>horse,d=>lion);
echo array_key_exists(a,$animals); //1 没有不返回false值
$search_array = array('first' => 1, 'second' => 4);
if (array_key_exists('first', $search_array)) {
echo the 'first' element is in the array;
} //the 'first' element is in the array
/* 数组指针操作 */
//key():返回数组内部指针当前指向元素的键名
//current():返回数组当前的元素
//next():把指向当前元素的指针移动到下一个元素的位置,并返回当前元素的值
//prev():把指向当前元素的指针移动到上一个元素的位置,并返回当前元素的值
//end():把当前内部指针指向最后一个元素,并返回该元素的值
//reset():把数组元素指针指向第一个值,并返回这个元素的值
$array = array(
'fruit1' => 'apple',
'fruit2' => 'orange',
'fruit3' => 'grape',
'fruit4' => 'apple',
'fruit5' => 'apple');
while ($fruit_name = current($array)) {
if ($fruit_name == 'apple') {
echo key($array).'
';
}
next($array);
} //fruit1 fruit4 fruit5
/* 遍历数组 */
/*正方向遍历*/
$a = array(10,20,30);
reset($a);
do{
echo key($a).==>.current($a).
;
}while(next($a)); // 0==>10 1==>20 2==>30
/*倒向遍历*/
end($a);
do{
echo key($a).===>.current($a).
;
}while(prev($a)); //2===>30 1===>20 0===>10
/* 指针 */
$transport = array('foot', 'bike', 'car', 'plane');
/*默认第一个为当前元素*/
$mode = current($transport); // $mode = 'foot';
$mode = next($transport); // $mode = 'bike';
/*当前元素为'bike'*/
$mode = current($transport); // $mode = 'bike';
$mode = prev($transport); // $mode = 'foot';
$mode = end($transport); // $mode = 'plane';
$mode = current($transport); // $mode = 'plane';
//list():把数组中的值赋给一些变量---------list不是函数
$arr = array(cat,dog,horse,cow);
list($a,$b,$c,$d) = $arr;
echo $a; //cat
echo $b; //dog
echo $c; //horse
echo $d; //cow
//array_shift():删除数组中的第一个元素,并返回被删除元素的值
$a = array(1=>dog,2=>cat,3=>horse);
echo array_shift($a); //dog
print_r ($a); //array ( [b] => cat [c] => horse )
//array_unshift():在数组开关插入一个或多个元素(如果当前数组为索引数组,则从0开始,依此类推;关联数组键名不变)
$a = array(10=>cat,b=>dog,3=>horse,5=>lion);
array_unshift($a,horse);
print_r($a); //array ( [0] => horse [1] => cat [b] => dog [2] => horse [3] => lion )
//array_push():向数组最后压入一个或多个元素
$a=array(a=>dog,3=>cat);
array_push($a,horse,bird);
print_r($a); //array ( [a] => dog [3] => cat [4] => horse [5] => bird )
//array_pop():删除数组中的最后一个元素
$a=array(dog,cat,horse);
array_pop($a);
print_r($a); //array ( [0] => dog [1] => cat )
/* 数组键值操作 */
//shuffle():将数组打乱,键名为索引数组从0开始(不能直接打印shuffle,分开写)
$animals = array(a=>dog, b=>cat, c=>cow, d=>horse,d=>lion);
shuffle($animals);
print_r($animals); //array ( [0] => dog [1] => cow [2] => cat [3] => lion ) 每刷新一次会随机变化
//count():计算数组中的单元数目式对象中的属性个数
$people = array(peter, joe, glenn, cleveland);
echo count($people); //4
//array_flip():返回一个键值反转后的数组
$a = array(0=>dog,1=>cat,2=>horse);
print_r(array_flip($a)); //array ( [dog] => 0 [cat] => 1 [horse] => 2 )
//array_keys():返回数组所有的键,组成一个数组
$a = array(a=>horse,b=>cat,c=>dog);
print_r(array_keys($a)); //array ( [0] => a [1] => b [2] => c )
//array_values():返回数组中所有的值,组成一个数组
$a = array(a=>horse,b=>cat,c=>dog);
print_r(array_values($a)); //array ( [0] => horse [1] => cat [2] => dog )
//array_reverse():返回一个元素顺序相反的数组
$a = array(a=>horse,b=>cat,c=>dog);
print_r(array_reverse($a)); //array ( [c] => dog [b] => cat [a] => horse )
//array_count_values():统计数组中所有值出现的次数
$a = array(1,2,3,4,1,1,3,5,3,2,1,3,4);
print_r(array_count_values($a)); //array ( [1] => 4 [2] => 2 [3] => 4 [4] => 2 [5] => 1 )
//array_rand():从数组中随机抽取一个或多个元素,注意是键名
$a=array(a=>dog,b=>cat,c=>horse,d=>lion,e=>cow);
print_r(array_rand($a,3)); //array ( [0] => b [1] => c [2] => e ) ***随机***
//each():返回数组中当前的键/值对并将数组指针向后移动一步
$foo = array(bob, fred, jussi, jouni, egon, marliese);
$bar = each($foo);
print_r($bar); //array ( [1] => bob [value] => bob [0] => 0 [key] => 0 )
/*每遍历一次,指针向后移动一位*/
$bar = each($foo);
print_r($bar); //array ( [1] => fred [value] => fred [0] => 1 [key] => 1 )
//array_unique():删除重复值,返回剩余数组
$a=array(a=>dog,b=>cat,c=>horse,d=>dog,e=>cow,f=>cow);
print_r(array_unique($a)); //array ( [a] => dog [b] => cat [c] => horse [e] => cow [f] => cow )
/* 数组排序 */
/**
* 返回值为1(正值):表示交换顺序
* 返回值为-1(负值):表示不交换顺序
**/
/**
* //原始键名被忽略(从零开始)(字符串顺序)
* sort():对值由小到大
* rsort():对值由大到小
*
* //原始键名保留(字符串顺序)
* asort():对值从小到大
* arsort():对值从大到小
**/
$my_array = array(a => dog, b => cat, c => horse);
sort($my_array);
print_r($my_array); //array ( [0] => cat [1] => dog [2] => horse )
$my_array = array(a => dog, b => cat, c => horse);
asort($my_array);
print_r($my_array); //array ( [b] => cat [a] => dog [c] => horse )
/**
* ksort():对下标由小到大
* krsort():对下标由大到小
**/
$my_array = array(h => dog, s => cat, a => horse);
ksort($my_array);
print_r($my_array); //array ( [a] => horse [h] => dog [s] => cat )
$my_array = array(e => dog, 2 => cat, a => horse);//按什么顺序排序
ksort($my_array);
print_r($my_array); //array ( [a] => horse [e] => dog [2] => cat )
/**
* usort():使用用户自定义的回调函数对数组排序
* uasort():使用用户自定义的回调函数对数组排序并保持索引关联
* uksort():使用用户自定义的回调函数对数组排序对数组键排序
**/
$v = array(1,3,5,2,4);
usort($v,'fun');
function fun($v1,$v2){
return ( $v1 > $v2 ) ? 1 : -1;
}
print_r($v); //array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 )
/* 排序加遍历 */
function cmp($a, $b)
{
if ($a == $b) {
return 0;
}
return ($a }
$a = array(3, 2, 5, 6, 1);
usort($a, cmp);
foreach ($a as $key => $value) {
echo $key.===>.$value. ; //0===>1 1===>2 2===>3 3===>5 4===>6
}
/* 排序遍历结束 */
/**
* sort():由小到大的字串排序(字母相等,比较不相等之后的一位大小)
* natsort();由小到大的自然排序(字母相等,比较数值)***区分大小写
* natcasesort():不区分大小写的自然排序
**/
$a = array(a => id2, b => id12, c => id22,d => id22);
sort($a); print_r($a); //array ( [0] => id22 [1] => id12 [2] => id2 [3] => id22 )
natsort($a); print_r($a); //array ( [0] => id22 [2] => id2 [1] => id12 [3] => id22 )
natcasesort($a); print_r($a); //array ( [2] => id2 [1] => id12 [3] => id22 [0] => id22 )
以上就介绍了php常用函数-数组,包括了php,常用方面的内容,希望对php教程有兴趣的朋友有所帮助。
其它类似信息

推荐信息