PHP經常使用函數

1 數組函數

1.1 建立數組

1.1.1 array_combine()

array_combine() 函數經過合併兩個數組來建立一個新數組,其中的一個數組元素爲鍵名,另外一個數組的元素爲鍵值。php

語法:array_combine(keys,values)html

參數:數組

keys:必需,規定數組的鍵名;函數

values:必需,規定數組的鍵值;ui

返回值:返回合併後的數組。若是兩個數組的元素個數不相同,則返回 FALSE。指針

<?php
$keys = ['張三', '李四', '王五'];
$values = [34, 25, 44];
$arr = array_combine($keys, $values);
var_dump($arr); // array(3) { ["張三"]=> int(34) ["李四"]=> int(25) ["王五"]=> int(44) }

1.1.2 range()

range() 函數建立一個包含指定範圍的元素的數組。code

語法:range(low,high,step)htm

參數:排序

low:必需。規定數組元素的最小值。索引

high:必需。規定數組元素的最大值。

step:可選。規定元素之間的步進制。默認是 1。

返回值:返回一個包含從 lowhigh 的元素的數組。

註釋若是 low 參數大於 high 參數,則建立的數組將是從 high 到 low。

<?php
$arr1 = range(0, 9);	// 建立一個0-9之間的數組;
$arr2 = range(a, z);	// 建立一個a-z之間的數組;
$arr3 = range(a, z, 10);	// 建立一個步長爲10的a-z之間的數組;

1.1.3 compact()

compact() 函數建立一個包含變量名和它們的值的數組。

語法:compact(var1,var2...)

參數:

var1:必需。能夠是帶有變量名的字符串,或者是一個變量數組。

var2:可選。能夠是帶有變量名的字符串,或者是一個變量數組。容許多個參數。

返回值:返回帶有全部變量名和它們的值的數組。

註釋:任何沒有變量名與之對應的字符串都被略過。

<?php
$firstname = 'zhangsan';
$lastname = 'lisi';
$age = '42';
$result = compact('firstname', 'lastname', 'age');	// 參數爲變量字符串
var_dump($result);	// array(3) { ["firstname"]=> string(8) "zhangsan" ["lastname"]=> string(4) "lisi" ["age"]=> string(2) "42" }

$name = array('firstname', 'lastname');
$result = compact($name, 'location', 'age');	// $name爲變量數組。location沒有對應的值
var_dump($result);	// array(3) { ["firstname"]=> string(8) "zhangsan" ["lastname"]=> string(4) "lisi" ["age"]=> string(2) "42" }

1.1.4 array_fill()

array_fill() 函數用給定的鍵值填充數組。

語法:array_fill(index,number,value);

參數:

index:必需。規定返回數組的起始索引。

number:必需。規定填充的元素的數量,其值必須大於 0。

value:必需。規定用於填充數組的鍵值。

返回值:返回填充的數組。

<?php
$arr = array_fill(3, 4, 'blue');	// 從索引3開始,填充4位,都填充blue
var_dump($arr);

1.2 數組合並與拆分

1.2.1 array_chunk()

array_chunk() 函數把一個數組分割爲新的數組塊.

語法:array_chunk(array,size,preserve_keys);

參數:

array:必需。規定要使用的數組。

size:必需。一個整數,規定每一個新的數組塊包含多少元素。

preserve_key:可選。可能的值爲:true - 保留原始數組中的鍵名。false - 默認。每一個新數組塊使用從零開始的索引。

返回值:返回一個多維的數值數組,從 0 開始,每一個維度都包含 size 元素。

<?php
$age_arr = array('zhangsan' => 20, 'lisi' => 30, 'wangwu' => 40);
$new_arr = array_chunk($age_arr, 2, true);	// 拆分爲多維數組,並保留原始數組中的鍵名
var_dump($new_arr);	//array(2) { [0]=> array(2) { ["zhangsan"]=> int(20) ["lisi"]=> int(30) } [1]=> array(1) { ["wangwu"]=> int(40) } }

1.2.2 array_merge()

array_merge() 函數用於把一個或多個數組合併爲一個數組。

語法:array_merge(array1,array2,array3...)

參數:

array1:必需。規定數組。

array2:可選。規定數組。

返回值:返回合併的數組。

<?php
$arr1 = array('zhangsan', 'lisi');
$arr2 = array('wangwu', 'zhaoliu');
$new_arr = array_merge($arr1, $arr2);
var_dump($new_arr);	// array(4) { [0]=> string(8) "zhangsan" [1]=> string(4) "lisi" [2]=> string(6) "wangwu" [3]=> string(7) "zhaoliu" }

1.2.3 array_slice()

array_slice() 函數返回數組中的選定部分。

語法:array_slice(array,start,length,preserve)

參數:

array:必需。規定數組。

start:必需。數值。規定取出元素的開始位置

length:可選。數值。規定被返回的數組的長度。

preserve:可選。true,保留鍵名。false,默認,重置鍵名。

返回值:返回數組中選定的部分。

<?php
$arr = array("red","green","blue","yellow","brown");
$new_arr = array_slice($arr, 2, 2, true);
var_dump($new_arr);	// array(2) { [2]=> string(4) "blue" [3]=> string(6) "yellow" }

1.3 數組比較

1.3.1 array_diff()

array_diff() 函數用於比較兩個(或更多個)數組的鍵值,並返回差集。

語法:array_diff(array1,array2,array3...);

參數:

array1:必需。與其餘數組進行比較的第一個數組。

array2:必需。與第一個數組進行比較的數組。

array3:可選,與第一個數組進行比較的其餘數組。

返回值:返回一個差集數組,該數組包括了全部在被比較的數組(array1)中,可是不在任何其餘參數數組(array2array3 等等)中的鍵值。

<?php
$arr1 = array('a' => 'red', 'b' => 'green', 'c' => 'blue', 'd' => 'yellow');
$arr2 = array('e' => 'red', 'f' => 'green', 'g' => 'blue');
$arr3 = array('a' => 'red', 'b' => 'black', 'h' => 'green');
$result = array_diff($arr1, $arr2, $arr3);
var_dump($result);		// array(1) { ["d"]=> string(6) "yellow" }

1.3.2 array_intersect()

array_intersect() 函數用於比較兩個(或更多個)數組的鍵值,並返回交集。

語法:array_intersect(array1,array2,array3...);

參數:

array1:必需。與其餘數組進行比較的第一個數組。

array2:必需。與第一個數組進行比較的數組。

array3:可選。與第一個數組進行比較的其餘數組。

返回值:返回一個交集數組,該數組包括了全部在被比較的數組(array1)中,同時也在任何其餘參數數組(array2array3 等等)中的鍵值。

<?php
$arr1 = array('a' => 'red', 'b' => 'green', 'c' => 'blue', 'd' => 'yellow');
$arr2 = array('e' => 'red', 'f' => 'green', 'g' => 'blue');
$arr3 = array('a' => 'red', 'b' => 'black', 'h' => 'green');
$result = array_intersect($arr1, $arr2, $arr3);
var_dump($result);		// array(2) { ["a"]=> string(3) "red" ["b"]=> string(5) "green" }

1.4 數組查找替換

1.4.1 array_search()

array_search() 函數在數組中搜索某個鍵值,並返回對應的鍵名。

語法:array_search(value,array,strict)

參數:

value:必需。規定在數組中搜索的鍵值。

array:必需。規定被搜索的數組。

strict:可選。若是爲true,則函數在數組中搜索數據類型和值都一致的元素。默認爲false。

返回值:若是在數組中找到指定的鍵值,則返回對應的鍵名,不然返回 FALSE。若是在數組中找到鍵值超過一次,則返回第一次找到的鍵值所匹配的鍵名。

<?php
$arr = array('a' => '5', 'b' => 5, 'c' => '5');
$value = array_search(5, $arr, true);	// 返回鍵值數據類型和值都一致的鍵名。
var_dump($value);	// string(1) "b"

1.4.2 array_splice()

array_splice() 函數從數組中移除選定的元素,並用新元素取代它。函數也將返回被移除元素的數組。

語法:array_splice(array,start,length,array)

參數:

array:必需,規定數組。

start:必需,數值。規定刪除元素的開始位置。

length:可選。數值。規定被移除的元素個數。

array:可選。規定帶有要插入原始數組中元素的數組。若是隻有一個元素,則能夠設置爲字符串,不須要設置爲數組。

返回值:返回包含被提取元素的數組。

<?php
$arr1 = array('a' => 'red', 'b' => 'green', 'c' => 'blue', 'd' => 'yellow');
$arr2 = array('a' => 'purple', 'b' => 'orange');
array_splice($arr1, 0, 2, $arr2);	// 把數組中的指定元素去掉並用其它值取代。
var_dump($arr1);	//array(4) { [0]=> string(6) "purple" [1]=> string(6) "orange" ["c"]=> string(4) "blue" ["d"]=> string(6) "yellow" }

1.5 數組指針操做

1.6 數組鍵值操做

1.7 數組排序

相關文章
相關標籤/搜索