本文實例講述了php array_chunk()函數(shù)用法與注意事項。分享給大家供大家參考,具體如下:
定義和用法
array_chunk()
函數(shù)把數(shù)組分割為新的數(shù)組塊。
其中每個數(shù)組的單元數(shù)目由 size 參數(shù)決定。最后一個數(shù)組的單元數(shù)目可能會少幾個。
可選參數(shù) preserve_key 是一個布爾值(默認false),它指定新數(shù)組的元素是否有和原數(shù)組相同的鍵(用于關(guān)聯(lián)數(shù)組),還是從 0 開始的新數(shù)字鍵(用于索引數(shù)組)。默認是分配新的鍵。
例如:
$arr = [1,2,3,4,5,6,7,8,9,10];
$arr = array_chunk($arr,2);
//則: $arr = [[1,2],[3,4],[5,6],[7,8],[9,10]];
print_r($arr);
運行結(jié)果:
Array
(
[0] => Array
(
[0] => 1
[1] => 2
)
[1] => Array
(
[0] => 3
[1] => 4
)
[2] => Array
(
[0] => 5
[1] => 6
)
[3] => Array
(
[0] => 7
[1] => 8
)
[4] => Array
(
[0] => 9
[1] => 10
)
)
$arr = [0=>'lily',1=>'lala',2=>'yaya',3=>'nini',4=>'maya',5=>'lant'];
$arr = array_chunk($arr,2,true);
//則:$arr = [[0=>'lily',1=>'lala'],[2=>'yaya',3=>'nini'],[4=>'maya',5=>'lant']];
print_r($arr);
運行結(jié)果:
Array
(
[0] => Array
(
[0] => lily
[1] => lala
)
[1] => Array
(
[2] => yaya
[3] => nini
)
[2] => Array
(
[4] => maya
[5] => lant
)
)
如果第三參數(shù)為false。則會分派新的鍵,都是從0開始了。
值得注意的是,當使用array_chunk()
分割數(shù)組,插入數(shù)據(jù)庫時,如果 分割的數(shù)組不是等份的時候,則可能導(dǎo)致 數(shù)據(jù)庫自增id 不連續(xù),所以有需求 自增id連續(xù)的話,盡量使 array_chunk()
分割的新數(shù)組為等份的來避免一些問題。
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《PHP數(shù)組(Array)操作技巧大全》、《php排序算法總結(jié)》、《PHP數(shù)據(jù)結(jié)構(gòu)與算法教程》、《php程序設(shè)計算法總結(jié)》、《php字符串(string)用法總結(jié)》及《PHP常用遍歷算法與技巧總結(jié)》
希望本文所述對大家PHP程序設(shè)計有所幫助。
您可能感興趣的文章:- 淺談php數(shù)組array_change_key_case() 函數(shù)和array_chunk()函數(shù)
- php使用array_chunk函數(shù)將一個數(shù)組分割成多個數(shù)組
- php中利用explode函數(shù)分割字符串到數(shù)組
- php把字符串指定字符分割成數(shù)組的方法
- 支持中文的PHP按字符串長度分割成數(shù)組代碼
- php通過數(shù)組實現(xiàn)多條件查詢實現(xiàn)方法(字符串分割)
- php將字符串隨機分割成不同長度數(shù)組的方法
- php數(shù)組函數(shù)序列之a(chǎn)rray_unique() - 去除數(shù)組中重復(fù)的元素值
- php數(shù)組函數(shù)序列之a(chǎn)rray_keys() - 獲取數(shù)組鍵名
- php數(shù)組函數(shù)序列之a(chǎn)rray_key_exists() - 查找數(shù)組鍵名是否存在
- php數(shù)組查找函數(shù)in_array()、array_search()、array_key_exists()使用實例