(1)利用php提供的函數(shù),array_unique和array_diff_assoc來(lái)實(shí)現(xiàn)
創(chuàng)新互聯(lián)是一家專注于成都網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)與策劃設(shè)計(jì),豐臺(tái)網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)10年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:豐臺(tái)等地區(qū)。豐臺(tái)做網(wǎng)站價(jià)格咨詢:13518219792
.代碼如下:
?php
function FetchRepeatMemberInArray($array) {
// 獲取去掉重復(fù)數(shù)據(jù)的數(shù)組
$unique_arr = array_unique ( $array );
// 獲取重復(fù)數(shù)據(jù)的數(shù)組
$repeat_arr = array_diff_assoc ( $array, $unique_arr );
return $repeat_arr;
}
// 測(cè)試用例
$array = array (
'apple',
'iphone',
'miui',
'apple',
'orange',
'orange'
);
$repeat_arr = FetchRepeatMemberInArray ( $array );
print_r ( $repeat_arr );
?
(2)自己寫(xiě)函數(shù)實(shí)現(xiàn)這個(gè)功能,利用兩次for循環(huán)
.代碼如下:
?php
function FetchRepeatMemberInArray($array) {
$len = count ( $array );
for($i = 0; $i $len; $i ++) {
for($j = $i + 1; $j $len; $j ++) {
if ($array [$i] == $array [$j]) {
$repeat_arr [] = $array [$i];
break;
}
}
}
return $repeat_arr;
}
// 測(cè)試用例
$array = array (
'apple',
'iphone',
'miui',
'apple',
'orange',
'orange'
);
$repeat_arr = FetchRepeatMemberInArray ( $array );
print_r ( $repeat_arr );
?
遍歷一次就搞定了
既然你要把單號(hào)相同的加起來(lái),就可以認(rèn)為單號(hào)是唯一的,所以單號(hào)可以做key
$sourceArr?=?array();??//?這里就是你原始數(shù)據(jù)的數(shù)組
$newArr?=?array();??//?這里是相加后處理過(guò)的數(shù)組,以單號(hào)為key
foreach?($sourceArr?as?$v)?{
if?(array_key_exists($v['id'],?$newArr))?{
$newArr[$v['id']]['fund']?+=?$v['fund'];
}?else?{
$newArr[$v['id']]?=?$v;
}
}
大概就是這么個(gè)意思,不過(guò)交易類型、賬務(wù)類型你可能還要再處理下。
如果最后想得到一個(gè)下標(biāo)從0開(kāi)始的,非關(guān)聯(lián)數(shù)組,再用array_values()函數(shù)處理下就OK了
//摘自php5手冊(cè)
?php
$a = array(2, 4, 6, 8);
echo "sum(a) = " . array_sum($a) . "\n";
$b = array("a" = 1.2, "b" = 2.3, "c" = 3.4);
echo "sum(b) = " . array_sum($b) . "\n";
?
當(dāng)前題目:php數(shù)組重讀數(shù)據(jù)求和,php 數(shù)組求和
地址分享:http://jinyejixie.com/article46/dsesoeg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供做網(wǎng)站、Google、用戶體驗(yàn)、定制開(kāi)發(fā)、定制網(wǎng)站、網(wǎng)站營(yíng)銷
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)