PHP常用的函数

PHP常用的函数整理
1.array_unique() 函数用于移除数组中重复的值。如果两个或更多个数组值相同,只保留第一个值,其他的值被移除。

<?php
$a=array("a"=>"red","b"=>"green","c"=>"red");
print_r(array_unique($a));
?>

//结果:
//Array ( [a] => red [b] => green )

2.array_merge() 函数用于把一个或多个数组合并为一个数组。
注释:如果两个或更多个数组元素有相同的键名,则最后的元素会覆盖其他元素。

<?php
$a1=array("a"=>"red","b"=>"green");
$a2=array("c"=>"blue","b"=>"yellow");
print_r(array_merge($a1,$a2));
?>

//结果:
//Array([a] => red [b] => yellow [c] => blue)

注释:如果您仅仅向 array_merge() 函数输入一个数组,且键名是整数,则该函数将返回带有整数键名的新数组,其键名以 0 开始进行重新索引

<?php
$a=array(3=>"red",4=>"green");
print_r(array_merge($a));
?>
//Array ( [0] => red [1] => green )

3.array_push() 函数向数组尾部插入一个或多个元素。

<?php
$a=array("red","green");
array_push($a,"blue","yellow");
print_r($a);
?>
//Array ( [0] => red [1] => green [2] => blue [3] => yellow )

4.array_slice() 函数返回数组中的选定部分。(可用于分页)

<?php
$a=array("red","green","blue","yellow","brown");
print_r(array_slice($a,1,2));
?>
//Array ( [0] => green [1] => blue )

5.array_values() 函数返回包含数组中所有的值的数组。
提示:被返回的数组将使用数值键,从 0 开始且以 1 递增。

<?php
$a=array("Name"=>"Peter","Age"=>"41","Country"=>"USA");
print_r(array_values($a));
?>
//Array ( [0] => Peter [1] => 41 [2] => USA )

6.array_shift() 函数用于删除数组中的第一个元素,并返回被删除的元素。
注释:如果键名是数字的,所有元素都将获得新的键名,从 0 开始,并以 1 递增

<?php
$a=array("a"=>"red","b"=>"green","c"=>"blue");
echo array_shift($a); //输出的是删除的那一个元素
print_r ($a);
?>
//red
//Array ( [b] => green [c] => blue )

7.array_column() 返回输入数组中某个单一列的值。

//从记录集中取出 last_name 列:
<?php
// 可能从数据库中返回数组
$a = array(
  array(
    'id' => 5698,
    'first_name' => 'Peter',
    'last_name' => 'Griffin',
  ),
  array(
    'id' => 4767,
    'first_name' => 'Ben',
    'last_name' => 'Smith',
  ),
  array(
    'id' => 3809,
    'first_name' => 'Joe',
    'last_name' => 'Doe',
  )
);

$last_names = array_column($a, 'last_name');
print_r($last_names);
?>
//输出(默认键值从0开始):
//Array([0] => Griffin [1] => Smith [2] => Doe)
//从记录集中取出 last_name 列,用相应的 "id" 列作为键值:
<?php
// 可能从数据库中返回数组
$a = array(
  array(
    'id' => 5698,
    'first_name' => 'Peter',
    'last_name' => 'Griffin',
  ),
  array(
    'id' => 4767,
    'first_name' => 'Ben',
    'last_name' => 'Smith',
  ),
  array(
    'id' => 3809,
    'first_name' => 'Joe',
    'last_name' => 'Doe',
  )
);

$last_names = array_column($a, 'last_name', 'id');
print_r($last_names);
?>
//输出:
//Array([5698] => Griffin [4767] => Smith [3809] => Doe)

8.array_flip() 函数用于反转/交换数组中的键名和对应关联的键值。

<?php
$a1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
$result=array_flip($a1);
print_r($result);
?>
输出结果
Array ( [red] => a [green] => b [blue] => c [yellow] => d )

9.array_diff() 函数用于比较两个(或更多个)数组的值,并返回差集。
比较两个(或多个)数组的值(key=>value 中的 value),并返回一个差集数组,该数组包括了所有在被比较的数组(array1)中,但是不在任何其他参数数组中的值。

<?php
$a1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
$a2=array("e"=>"red","f"=>"green","g"=>"blue");
$result=array_diff($a1,$a2);
print_r($result);
?>
//输出:Array ( [d] => yellow )

10.array_search() 函数在数组中搜索某个键值,并返回对应的键名。

<?php
$a=array("a"=>"red","b"=>"green","c"=>"blue");
echo array_search("red",$a);

?>
//输出:a

11.array_reverse() 函数返回翻转顺序的数组。

<?php
$a=array("a"=>"Volvo","b"=>"BMW","c"=>"Toyota");
print_r(array_reverse($a));

?>
//Array ( [c] => Toyota [b] => BMW [a] => Volvo )

12.in_array() 函数搜索数组中是否存在指定的值。

<?php
$sites = array("Google", "Runoob", "Taobao", "Facebook");
if (in_array("Runoob", $sites))
{
    echo "找到匹配项!";
}
else
{
    echo "没有找到匹配项!";
}
?>

//找到匹配项!

13.array_key_exists() 函数检查某个数组中是否存在指定的键名,如果键名存在则返回 true,如果键名不存在则返回 false。

<?php
$a=array("Volvo"=>"XC90","BMW"=>"X5");
if (array_key_exists("Toyota",$a))
{
    echo "Key exists!";
}
else
{
    echo "Key does not exist!";
}
?>

//Key does not exist!

提示:如果您指定数组的时候省略了键名,将会生成从 0 开始并以 1 递增的整数键名

<?php
$a=array("Volvo","BMW");
if (array_key_exists(0,$a))
{
    echo "Key exists!";
}
else
{
    echo "Key does not exist!";
}
?>
//Key exists!

14.array_pop() 函数删除数组中的最后一个元素。

<?php
$a=array("red","green","blue");
array_pop($a);
print_r($a);
?>
//Array ( [0] => red [1] => green )

15.array_unshift() 函数用于向数组插入新元素。新数组的值将被插入到数组的开头
提示:您可以插入一个或多个值。

<?php
$a=array("a"=>"red","b"=>"green");
array_unshift($a,"blue");
print_r($a);
?>
//Array ( [0] => blue [a] => red [b] => green )

注意:数值键名将从 0 开始,以 1 递增。字符串键名将保持不变。

<?php
$a=array(0=>"red",1=>"green");
array_unshift($a,"blue");
print_r($a);
?>
//Array ( [0] => blue [1] => red [2] => green )

16.explode() 函数使用一个字符串分割另一个字符串,并返回由字符串组成的数组。

<?php
$str = "www.runoob.com";
print_r (explode(".",$str));
?>
//Array([0] => www [1] => runoob[2] => com)

17.implode() 函数返回一个由数组元素组合成的字符串

<?php
$arr = array('Hello','World!','Beautiful','Day!');
echo implode(" ",$arr);
?>
//Hello World! Beautiful Day!

18.shuffle() 函数把数组中的元素按随机顺序重新排列

<?php
$my_array = array("red","green","blue","yellow","purple");

shuffle($my_array);
print_r($my_array);
?>
//Array ( [0] => blue [1] => green [2] => yellow [3] => red [4] => purple )

19.array_intersect() 函数用于比较两个(或更多个)数组的键值,并返回交集。
该函数比较两个(或更多个)数组的键值,并返回一个交集数组,该数组包括了所有在被比较的数组(array1)中,同时也在任何其他参数数组(array2 或 array3 等等)中的键值。

<?php
$a1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
$a2=array("e"=>"red","f"=>"green","g"=>"blue");

$result=array_intersect($a1,$a2);
print_r($result);
?>
//Array ( [a] => red [b] => green [c] => blue )

20.array_sum() 函数返回数组中所有值的和
例一:

<?php
$a=array(5,15,25);
echo array_sum($a);
?>
//45

例二:

<?php
$a=array("a"=>52.2,"b"=>13.7,"c"=>0.9);
echo array_sum($a);
?>
//66.8

以上完成的操作如有不正确的地方还望诸位多多指教
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,544评论 6 501
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,430评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,764评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,193评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,216评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,182评论 1 299
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,063评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,917评论 0 274
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,329评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,543评论 2 332
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,722评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,425评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,019评论 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,671评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,825评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,729评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,614评论 2 353

推荐阅读更多精彩内容