當前位置:首頁 » 編程語言 » php數組分類

php數組分類

發布時間: 2023-12-12 11:47:27

php如何高效地對根據鍵值對數組元素進行歸類

<?phpfunction filter($elem){ return $elem['type'] == '空調';}$arr=Array( Array('id' => 1,'type' => '空調'), Array('id' => 2,'type' => '電視機'), Array('id' => 3,'type' => '空調'));$newarr = array_filter($arr, 'filter');print_r($newarr);exit;

Ⅱ php數組如何根據相同值再分組

這個答案是錯誤的!請及時認清。我想問一下答主你是這么想的?

請查考下面的這些PHP函數
統計:
array_count_values 統計數組中所有的值出現的次數
array_proct 計算數組中所有值的乘積
array_sum 計算數組中所有值的和
count 計算數組中的單元數目或對象中的屬性個數
sizeof count() 的別名

搜索:
array_key_exists 檢查給定的鍵名或索引是否存在於數組中
array_search 在數組中搜索給定的值,如果成功則返回相應的鍵名
in_array 檢查數組中是否存在某個值

排序:
array_multisort 對多個數組或多維數組進行排序
arsort 對數組進行逆向排序並保持索引關系
asort 對數組進行排序並保持索引關系
krsort 對數組按照鍵名逆向排序
ksort 對數組按照鍵名排序
natcasesort 用「自然排序」演算法對數組進行不區分大小寫字母的排序
natsort 用「自然排序」演算法對數組排序
rsort 對數組逆向排序
sort 對數組排序
uasort 使用用戶自定義的比較函數對數組中的值進行排序並保持索引關聯
uksort 使用用戶自定義的比較函數對數組中的鍵名進行排序
usort 使用用戶自定義的比較函數對數組中的值進行排序
shuffle 將數組打亂

交集:
array_intersect_assoc 帶索引檢查計算數組的交集
array_intersect_key 使用鍵名比較計算數組的交集
array_intersect_uassoc 帶索引檢查計算數組的交集,用回調函數比較索引
array_intersect_ukey 用回調函數比較鍵名來計算數組的交集
array_intersect 計算數組的交集
array_key_exists 用回調函數比較鍵名來計算數組的交集
array_uintersect_assoc 帶索引檢查計算數組的交集,用回調函數比較數據
array_uintersect 計算數組的交集,用回調函數比較數據

差集:
array_udiff_assoc 帶索引檢查計算數組的差集,用回調函數比較數據
array_udiff_uassoc 帶索引檢查計算數組的差集,用回調函數比較數據和索引
array_udiff 用回調函數比較數據來計算數組的差集
array_diff_assoc 帶索引檢查計算數組的差集
array_diff_key 使用鍵名比較計算數組的差集
array_diff_uassoc 用用戶提供的回調函數做索引檢查來計算數組的差集
array_diff_ukey 用回調函數對鍵名比較計算數組的差集
array_diff 計算數組的差集

獲取數組的部分內容:
array_chunk 將一個數組分割成多個
array_filter 用回調函數過濾數組中的單元
array_keys 返回數組中所有的鍵名
array_slice 從數組中取出一段
array_values 返回數組中所有的值

加工出所需數組:
array_combine 創建一個數組,用一個數組的值作為其鍵名,另一個數組的值作 為其值
array_fill 用給定的值填充數組
array_flip 交換數組中的鍵和值
array_map 將回調函數作用到給定數組的單元上
array_merge_recursive 遞歸地合並一個或多個數組
array_merge 合並一個或多個數組
array_pad 用值將數組填補到指定長度
array_push 將一個或多個單元壓入數組的末尾(入棧)
array_reverse 返回一個單元順序相反的數組
array_shift 將數組開頭的單元移出數組
array_splice 把數組中的一部分去掉並用其它值取代
array_unique 移除數組中重復的值
array_unshift 在數組開頭插入一個或多個單元
array_walk_recursive 對數組中的每個成員遞歸地應用用戶函數
array_walk 對數組中的每個成員應用用戶函數
compact 建立一個數組,包括變數名和它們的值
range 建立一個包含指定范圍單元的數組

單元:
array_pop 將數組最後一個單元彈出(出棧)
array_rand 從數組中隨機取出一個或多個單元
current 返回數組中的當前單元
pos current() 的別名
each 返回數組中當前的鍵/值對並將數組指針向前移動一步
end 將數組的內部指針指向最後一個單元
key 返回數組中當前單元的鍵名
list 把數組中的值賦給一些變數
next 將數組中的內部指針向前移動一位
prev 將數組的內部指針倒回一位
reset 將數組的內部指針指向第一個單元

其他:
array_rece 用回調函數迭代地將數組簡化為單一的值
extract 從數組中將變數導入到當前的符號表
array 新建一個數組

Ⅲ PHP根據二維數組元素數量拆分成若干個小數組

php數組分組可以使用函數array_chunk,按照給定的規則進行遍歷,如果數組的num值大於8,就整除8,獲取整除的數據,然後按照整除數進行分組分塊即可。

Ⅳ PHP 數組遍歷方法大全(foreach,list,each)

在PHP中數組分為兩類:
數字索引數組和關聯數組。
其中數字索引數組和C語言中的數組一樣,下標是為0,1,2…
而關聯數組下標可能是任意類型,與其它語言中的hash,map等結構相似。
下面介紹PHP中遍歷關聯數組的三種方法:
方法1:foreach
復制代碼
代碼如下:
<?php
$sports
=
array(
'football'
=>
'good',
'swimming'
=>
'very
well',
'running'
=>
'not
good');
foreach
($sports
as
$key
=>
$value)
{
echo
$key.":
".$value."<br
/>";
?>
輸出結果:
football:
good
swimming:
very
well
running:
not
good
方法2:each
復制代碼
代碼如下:
<?php
$sports
=
array(
'football'
=>
'good',
'swimming'
=>
'very
well',
'running'
=>
'not
good');
while
($elem
=
each($sports))
{
echo
$elem['key'].":
".$elem['value']."<br
/>";
?>
方法3:list
&
each
復制代碼
代碼如下:
<?php
$sports
=
array(
'football'
=>
'good',
'swimming'
=>
'very
well',
'running'
=>
'not
good');
while
(list($key,
$value)
=
each($sports))
{
echo
$key.":
".$value."<br
/>";
?>

Ⅳ php 一維數組、二維數組、多維數組區別詳解

簡單說說吧:

一維數組:[ 0 ]索引 =>指向 [ ... ]內容
array { [ 0 ]=>[ 內容 ],[ 1 ]=>[ 內容 ],[ 2 ]=>[ 內容 ],[ 3 ]=>[ 內容 ],[ 4 ]=>[ 內容 ]}

二維數組:
array {
[ 0 ]=>array { [ 0 ]=>[ 內容 ],[ 1 ]=>[ 內容 ],[ 2 ]=>[ 內容 ],[ 3 ]=>[ 內容 ],[ 4 ]=>[ 內容 ] },
[ 1 ]=>array { [ 0 ]=>[ 內容 ],[ 1 ]=>[ 內容 ],[ 2 ]=>[ 內容 ],[ 3 ]=>[ 內容 ],[ 4 ]=>[ 內容 ] },
[ 2 ]=>array { [ 0 ]=>[ 內容 ],[ 1 ]=>[ 內容 ],[ 2 ]=>[ 內容 ],[ 3 ]=>[ 內容 ],[ 4 ]=>[ 內容 ] },
[ 3 ]=>array { [ 0 ]=>[ 內容 ],[ 1 ]=>[ 內容 ],[ 2 ]=>[ 內容 ],[ 3 ]=>[ 內容 ],[ 4 ]=>[ 內容 ] },
[ 4 ]=>array { [ 0 ]=>[ 內容 ],[ 1 ]=>[ 內容 ],[ 2 ]=>[ 內容 ],[ 3 ]=>[ 內容 ],[ 4 ]=>[ 內容 ] }
}

三維數組:
array {
[ 0 ] =>
array {
[ 0 ]=>array { [ 0 ]=>[ 內容 ],[ 1 ]=>[ 內容 ],[ 2 ]=>[ 內容 ],[ 3 ]=>[ 內容 ],[ 4 ]=>[ 內容 ] },
[ 1 ]=>array { [ 0 ]=>[ 內容 ],[ 1 ]=>[ 內容 ],[ 2 ]=>[ 內容 ],[ 3 ]=>[ 內容 ],[ 4 ]=>[ 內容 ] },
[ 2 ]=>array { [ 0 ]=>[ 內容 ],[ 1 ]=>[ 內容 ],[ 2 ]=>[ 內容 ],[ 3 ]=>[ 內容 ],[ 4 ]=>[ 內容 ] },
[ 3 ]=>array { [ 0 ]=>[ 內容 ],[ 1 ]=>[ 內容 ],[ 2 ]=>[ 內容 ],[ 3 ]=>[ 內容 ],[ 4 ]=>[ 內容 ] },
[ 4 ]=>array { [ 0 ]=>[ 內容 ],[ 1 ]=>[ 內容 ],[ 2 ]=>[ 內容 ],[ 3 ]=>[ 內容 ],[ 4 ]=>[ 內容 ] }
}
[ 1 ] =>
array {
[ 0 ]=>array { [ 0 ]=>[ 內容 ],[ 1 ]=>[ 內容 ],[ 2 ]=>[ 內容 ],[ 3 ]=>[ 內容 ],[ 4 ]=>[ 內容 ] },
[ 1 ]=>array { [ 0 ]=>[ 內容 ],[ 1 ]=>[ 內容 ],[ 2 ]=>[ 內容 ],[ 3 ]=>[ 內容 ],[ 4 ]=>[ 內容 ] },
[ 2 ]=>array { [ 0 ]=>[ 內容 ],[ 1 ]=>[ 內容 ],[ 2 ]=>[ 內容 ],[ 3 ]=>[ 內容 ],[ 4 ]=>[ 內容 ] },
[ 3 ]=>array { [ 0 ]=>[ 內容 ],[ 1 ]=>[ 內容 ],[ 2 ]=>[ 內容 ],[ 3 ]=>[ 內容 ],[ 4 ]=>[ 內容 ] },
[ 4 ]=>array { [ 0 ]=>[ 內容 ],[ 1 ]=>[ 內容 ],[ 2 ]=>[ 內容 ],[ 3 ]=>[ 內容 ],[ 4 ]=>[ 內容 ] }
}
[ 2 ] =>
array {
[ 0 ]=>array { [ 0 ]=>[ 內容 ],[ 1 ]=>[ 內容 ],[ 2 ]=>[ 內容 ],[ 3 ]=>[ 內容 ],[ 4 ]=>[ 內容 ] },
[ 1 ]=>array { [ 0 ]=>[ 內容 ],[ 1 ]=>[ 內容 ],[ 2 ]=>[ 內容 ],[ 3 ]=>[ 內容 ],[ 4 ]=>[ 內容 ] },
[ 2 ]=>array { [ 0 ]=>[ 內容 ],[ 1 ]=>[ 內容 ],[ 2 ]=>[ 內容 ],[ 3 ]=>[ 內容 ],[ 4 ]=>[ 內容 ] },
[ 3 ]=>array { [ 0 ]=>[ 內容 ],[ 1 ]=>[ 內容 ],[ 2 ]=>[ 內容 ],[ 3 ]=>[ 內容 ],[ 4 ]=>[ 內容 ] },
[ 4 ]=>array { [ 0 ]=>[ 內容 ],[ 1 ]=>[ 內容 ],[ 2 ]=>[ 內容 ],[ 3 ]=>[ 內容 ],[ 4 ]=>[ 內容 ] }
}
[ 3 ] =>
array {
[ 0 ]=>array { [ 0 ]=>[ 內容 ],[ 1 ]=>[ 內容 ],[ 2 ]=>[ 內容 ],[ 3 ]=>[ 內容 ],[ 4 ]=>[ 內容 ] },
[ 1 ]=>array { [ 0 ]=>[ 內容 ],[ 1 ]=>[ 內容 ],[ 2 ]=>[ 內容 ],[ 3 ]=>[ 內容 ],[ 4 ]=>[ 內容 ] },
[ 2 ]=>array { [ 0 ]=>[ 內容 ],[ 1 ]=>[ 內容 ],[ 2 ]=>[ 內容 ],[ 3 ]=>[ 內容 ],[ 4 ]=>[ 內容 ] },
[ 3 ]=>array { [ 0 ]=>[ 內容 ],[ 1 ]=>[ 內容 ],[ 2 ]=>[ 內容 ],[ 3 ]=>[ 內容 ],[ 4 ]=>[ 內容 ] },
[ 4 ]=>array { [ 0 ]=>[ 內容 ],[ 1 ]=>[ 內容 ],[ 2 ]=>[ 內容 ],[ 3 ]=>[ 內容 ],[ 4 ]=>[ 內容 ] }
}
[ 4 ] =>
array {
[ 0 ]=>array { [ 0 ]=>[ 內容 ],[ 1 ]=>[ 內容 ],[ 2 ]=>[ 內容 ],[ 3 ]=>[ 內容 ],[ 4 ]=>[ 內容 ] },
[ 1 ]=>array { [ 0 ]=>[ 內容 ],[ 1 ]=>[ 內容 ],[ 2 ]=>[ 內容 ],[ 3 ]=>[ 內容 ],[ 4 ]=>[ 內容 ] },
[ 2 ]=>array { [ 0 ]=>[ 內容 ],[ 1 ]=>[ 內容 ],[ 2 ]=>[ 內容 ],[ 3 ]=>[ 內容 ],[ 4 ]=>[ 內容 ] },
[ 3 ]=>array { [ 0 ]=>[ 內容 ],[ 1 ]=>[ 內容 ],[ 2 ]=>[ 內容 ],[ 3 ]=>[ 內容 ],[ 4 ]=>[ 內容 ] },
[ 4 ]=>array { [ 0 ]=>[ 內容 ],[ 1 ]=>[ 內容 ],[ 2 ]=>[ 內容 ],[ 3 ]=>[ 內容 ],[ 4 ]=>[ 內容 ] }
}
}

維數越多,嵌套越復雜,頭腦要清晰啊!

Ⅵ php中數組的分類有哪兩種

1、索引數組

有兩種創建索引數組的方法:

索引是自動分配的(索引從 0 開始):

$cars=array("porsche","BMW","Volvo");

2、關聯數組

關聯數組是使用您分配給數組的指定鍵的數組。

有兩種創建關聯數組的方法:

$age=array("Bill"=>"35","Steve"=>"37","Elon"=>"43");

(6)php數組分類擴展閱讀

實用函數——

有相當多的實用函數作用於數組,參見數組函數一節。

注: unset() 函數允許取消一個數組中的鍵名。要注意數組將不會重建索引。

<?php

$a = array( 1 => 'one', 2 => 'two', 3 => 'three' );

unset( $a[2] );

/* 將產生一個數組,定義為

$a = array( 1=>'one', 3=>'three');

而不是

$a = array( 1 => 'one', 2 => 'three');

*/

$b = array_values($a);

// Now $b is array(0 => 'one', 1 =>'three')

?>

foreach 控制結構是專門用於數組的。它提供了一個簡單的方法來遍歷數組。

Ⅶ 如何實現PHP根據數組的值進行分組

PHP根據數組的值分組,php array中沒有自帶這個函數但是很常用
代碼:
$_array = array(
array(1,11,'2016-05-18'),
array(2,11,'2016-05-18'),
array(3,22,'2016-05-18'),
array(4,22,'2016-05-18'),
array(5,33,'2016-05-19'),
array(6,33,'2016-05-19'),
array(7,44,'2016-05-19'),
array(8,44,'2016-05-19'),
array(9,55,'2016-05-20'),
array(10,55,'2016-05-20'),
);
var_mp(array_val_chunk($_array));
function array_val_chunk($array){
$result = array();
foreach ($array as $key => $value) {
$result[$value[1].$value[2]][] = $value;
}
$ret = array();
//這里把簡直轉成了數字的,方便同意處理
foreach ($result as $key => $value) {
array_push($ret, $value);
}
return $ret;
}

運行結果如下:
array(5) {
[0]=>
array(2) {
[0]=>
array(3) {
[0]=>
int(1)
[1]=>
int(11)
[2]=>
string(10) "2016-05-18"
}
[1]=>
array(3) {
[0]=>
int(2)
[1]=>
int(11)
[2]=>
string(10) "2016-05-18"
}
}
[1]=>
array(2) {
[0]=>
array(3) {
[0]=>
int(3)
[1]=>
int(22)
[2]=>
string(10) "2016-05-18"
}
[1]=>
array(3) {
[0]=>
int(4)
[1]=>
int(22)
[2]=>
string(10) "2016-05-18"
}
}
[2]=>
array(2) {
[0]=>
array(3) {
[0]=>
int(5)
[1]=>
int(33)
[2]=>
string(10) "2016-05-19"
}
[1]=>
array(3) {
[0]=>
int(6)
[1]=>
int(33)
[2]=>
string(10) "2016-05-19"
}
}
[3]=>
array(2) {
[0]=>
array(3) {
[0]=>
int(7)
[1]=>
int(44)
[2]=>
string(10) "2016-05-19"
}
[1]=>
array(3) {
[0]=>
int(8)
[1]=>
int(44)
[2]=>
string(10) "2016-05-19"
}
}
[4]=>
array(2) {
[0]=>
array(3) {
[0]=>
int(9)
[1]=>
int(55)
[2]=>
string(10) "2016-05-20"
}
[1]=>
array(3) {
[0]=>
int(10)
[1]=>
int(55)
[2]=>
string(10) "2016-05-20"
}
}
}

熱點內容
pspfifa無緩存 發布:2025-01-24 16:45:13 瀏覽:164
androidhandler機制 發布:2025-01-24 16:41:10 瀏覽:935
安卓系統如何下載aov 發布:2025-01-24 16:29:53 瀏覽:572
iptables允許ip訪問 發布:2025-01-24 16:19:58 瀏覽:931
安卓80如何識別存儲卡許可權 發布:2025-01-24 16:19:54 瀏覽:231
存儲介質價格 發布:2025-01-24 16:19:18 瀏覽:150
刪除多個表sql 發布:2025-01-24 16:10:57 瀏覽:595
安卓設備版本哪裡看 發布:2025-01-24 16:06:00 瀏覽:549
編譯錯誤參數不可選 發布:2025-01-24 16:00:51 瀏覽:289
倉儲軟體用什麼伺服器 發布:2025-01-24 16:00:03 瀏覽:626