本文目錄一覽:
- 1、php數據數組重新分組
- 2、如何實現PHP根據數組的值進行分組
- 3、php 數組 分組求和
- 4、PHP根據二維數組元素數量拆分成若干個小數組?
- 5、php 數組【1,2,3,4,5,6,7,8,9,10】分組
php數據數組重新分組
$arr = array(
“圓柱加” = array(
“data” = array(
array(
“product_id” = 36,
“style_id” = 102,
“style_name” = “圓柱架”,
“product_sn” = “MMJ000036”,
“product_thumb” = “a.jpg”
),
array(
“product_id” = 36,
“style_id” = 102,
“style_name” = “圓柱架”,
“product_sn” = “MMJ000036”,
“product_thumb” = “a.jpg”
),
)
),
“蝴蝶夾” = array(
“data” = array(
array(
“product_id” = 36,
“style_id” = 102,
“style_name” = “蝴蝶夾”,
“product_sn” = “MMJ000036”,
“product_thumb” = “a.jpg”
),
array(
“product_id” = 36,
“style_id” = 102,
“style_name” = “蝴蝶夾”,
“product_sn” = “MMJ000036”,
“product_thumb” = “a.jpg”
),
)
)
);
$count = 0;
foreach($arr as $k=$v){
$arr[$k][‘group_name’] = $k;
$arr[$count] = $arr[$k];
unset($arr[$k]);
$count++;
}
echo json_encode($arr);
這樣輸出出來格式是”data”:[{}],”group_name”: “XXX”
反正是json 反的也沒問題吧?
寫這麼多你都不給我採納一下。。。
如何實現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_dump(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”
}
}
}
php 數組 分組求和
?php
//多維數組
$arr = array(
array(‘goods_id’=1888,’provider_id’=81,’in_number’=20,’out_number’=30),
array(‘goods_id’=1888,’provider_id’=8818,’in_number’=10,’out_number’=20),
array(‘goods_id’=198,’provider_id’=894,’in_number’=10,’out_number’=20)
);
//定義新數組接收元素
$newArr = array();
if($arr[0][‘goods_id’] == $arr[1][‘goods_id’]){
$newArr[‘in_number’] = $arr[0][‘in_number’] + $arr[1][‘in_number’];
$newArr[‘provider_id’] = $arr[0][‘provider_id’] $arr[1][‘provider_id’] ? $arr[0][‘provider_id’] : $arr[1][‘provider_id’];
$newArr[‘out_number’] = $arr[0][‘out_number’] $arr[1][‘out_number’] ? $arr[0][‘out_number’] : $arr[1][‘out_number’];
}elseif($arr[0][‘goods_id’] == $arr[2][‘goods_id’]){
$newArr[‘in_number’] = $arr[0][‘in_number’] + $arr[2][‘in_number’];
$newArr[‘provider_id’] = $arr[0][‘provider_id’] $arr[2][‘provider_id’] ? $arr[0][‘provider_id’] : $arr[2][‘provider_id’];
$newArr[‘out_number’] = $arr[0][‘out_number’] $arr[2][‘out_number’] ? $arr[0][‘out_number’] : $arr[2][‘out_number’];
}elseif($arr[1][‘goods_id’] == $arr[2][‘goods_id’]){
$newArr[‘in_number’] = $arr[1][‘in_number’] + $arr[2][‘in_number’];
$newArr[‘provider_id’] = $arr[1][‘provider_id’] $arr[2][‘provider_id’] ? $arr[1][‘provider_id’] : $arr[2][‘provider_id’];
$newArr[‘out_number’] = $arr[1][‘out_number’] $arr[2][‘out_number’] ? $arr[1][‘out_number’] : $arr[2][‘out_number’];
}
echo ‘pre’;
var_dump($newArr);
/*輸出如下
array(3) {
[“in_number”]=
int(30)
[“provider_id”]=
int(81)
[“out_number”]=
int(30)
}
*/
PHP根據二維數組元素數量拆分成若干個小數組?
php數組分組可以使用函數array_chunk,按照給定的規則進行遍歷,如果數組的num值大於8,就整除8,獲取整除的數據,然後按照整除數進行分組分塊即可。
php 數組【1,2,3,4,5,6,7,8,9,10】分組
array_chunk(array,size,preserve_keys) 函數把一個數組分割為新的數組塊。
array 必需。規定要使用的數組。
size 必需。一個整數,規定每個新數組塊包含多少個元素。
preserve_key 可選。可能的值:
true – 保留原始數組中的鍵名。
false – 默認。每個新數組塊使用從零開始的索引。
求採納,謝謝!
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/245952.html