常用数组简单实例

<?php
/**
* @author gf
* time:2015/12/23
* 常用数组汇总及用法
*/
/***********************************数组的键名键值操作函数start**********************************************/
$array = array(
'name' => 'gaofei',
'pasd' => '123445',
'email'=> '825482',
);
header('Content-type:text/html;charset="utf-8"');
/*获取数组的所有数值array_values(数组)
var_dump(array_values($array));*/

/*获取数组的键名array_keys(数组)
var_dump(array_keys($array));*/

/*在数组中检索是否存在某个值 in_array('参数',数组)
if(in_array('gaofei',$array))
{
echo 'array中存在gaofei';
}
else
{
echo 'array中不存在gaofei';
}*/

/*array_search(参数,数组) 在数组中检索参数,如果存在并返回键名
var_dump(array_search('gaofei',$array));*/

/*array_key_exists(参数,数组)检索给定的键名是否存在于数组中
if(array_key_exists('name',$array))
{
echo 'array存在键名name';
}
else
{
echo 'array不存在键名name';
}*/

/*isset 检索给定的键名是否存在于数组中
echo isset($array['sss']) ? '数组中存在这个键名' : '数组中不存在这个键名';*/

/*current 返回数组的当前单元 初始指向数组的第一个单元
echo current($array);*/
/***********************************数组的键名键值操作函数start**********************************************/
/**********************************数组的分段和填充start**********************************************/
$arr = array(
'name' => 'gaofei',
'word' => '123456',
'mail' => 'wwwwww',
);
$arr2=array(0=>"Tiger",1=>"Lion");
/*array_splice(数组,偏移量,长度,替换数组) 数组必填, 偏移量可为空,长度可为空,新数组选填
array_splice($arr , 0 ,'1', $arr2);
打印结果 array(4) { [0]=> string(5) "Tiger" [1]=> string(4) "Lion" ["word"]=> string(6) "123456" ["mail"]=> string(6) "wwwwww" }*/

/* array_slice(数组,偏移量,长度) 可以取出数组的任意一段,此函忽略键名
$arrtwo = array(0,1,2,3,4);
var_dump(array_slice($arr,0,1));
打印结果 array(1) { ["name"]=> string(6) "gaofei" }*/

/*分割数组 array_chunk(数组,参数,true or false) 注:true为保留原数组键名,false相反
var_dump(array_chunk($arr, 2, true));
打印结果
array(2) {
[0]=>
array(2) {
["name"]=>
string(6) "gaofei"
["word"]=>
string(6) "123456"
}
[1]=>
array(1) {
["mail"]=>
string(6) "wwwwww"
}
}*/
/*var_dump(array_chunk($arr, 2, false));
打印结果
array(2) {
[0]=>
array(2) {
[0]=>
string(6) "gaofei"
[1]=>
string(6) "123456"
}
[1]=>
array(1) {
[0]=>
string(6) "wwwwww"
}
}*/

/*数组的填充array_pad(数组,长度,填充物)
var_dump(array_pad($arr,7,'123'));*/

/*********************************数组的合并***********************************************/
$arr = array(
'name' => 'gaofei',
'word' => '123456',
'mail' => 'wwwwww',
);
$arr2=array(0=>"Tiger",1=>"Lion");
/*array_merge() 合并两个或多个数组(相同的字符串键名,后面的覆盖前面的,相同的数字键名,后面的不会做覆盖操作,而是附加到后面)对于相同的键名只保留后一个
$arr3 = array_merge($arr,$arr2);
var_dump($arr3);*/

/*
* 递归合并操作,如果数组中有相同的字符串键名,这些值将被合并到一个数组中去。
* 如果一个值本身是一个数组,将按照相应的键名把它合并为另一个数组。
* 当数组 具有相同的数组键名时,后一个值将不会覆盖原来的值,而是附加到后面
* $arr3 = array_merge_recursive($arr , $arr2);
var_dump($arr3);
打印结果

array(5) {
["name"]=>
string(6) "gaofei"
["word"]=>
string(6) "123456"
["mail"]=>
string(6) "wwwwww"
[0]=>
string(5) "Tiger"
[1]=>
string(4) "Lion"
}*/

/*array_rand(数组,参数) 从数组中随机取出几个数组或字符串
$arr4 = array_rand($arr , 2);
print_r($arr4);
打印结果 验证码制作就是此原理
Array
(
[0] => name
[1] => mail
)*/

/*打乱数组顺序*/
/*shuffle($arr);
print_r($arr);
打印结果
Array
(
[0] => gaofei
[1] => 123456
[2] => wwwwww
)

*/





































原文地址:https://www.cnblogs.com/g825482785/p/g8243.html