① php計算二維數組中一維數組相同鍵名的,鍵值相加
$arr=array();
foreach($testas$v){
if(isset($arr[key($v)])){
$arr[key($v)]+=current($v);
}else{
$arr[key($v)]=current($v);
}
}
print_r($arr);
結果如圖:

② php二維數組求和
$new = array();
foreach($array as $value){
//新的cid號存一個新的數組
if(empty($new[$value['cid']])){
$new[$value['cid']] = $value;
//存儲IP進入數組,方便後續判斷
$new[$value['cid']]['ip'] = array($value['order_ip']);
}else{
//累加amo的值
$new[$value['cid']]['order_amo'] += $value['order_amo'];
//判斷IP是否為空或者是否重復
if(!empty($value['order_ip']) && !in_array($value['order_ip'],$new[$value['cid']])){
//拼接ip,並添加到IP數組,方便後續判斷
$new[$value['cid']]['order_ip'] .= ','.$value['order_ip'];
$new[$value['cid']]['ip'] = array($value['order_ip']);
}
}
}
③ php 二維數組怎麼取到里邊的值並且求和
<?php
$arr = array(
array(
'id'=>2,
'img'=>'upload/10.jpg',
'name'=>'1111',
'num'=>4,
'ptol'=>444
),
array(
'id'=>1,
'img'=>'upload/10.jpg',
'name'=>'產品1',
'num'=>2,
'ptol'=>20
)
);
$sum = $arr[0]['ptol'] + $arr[1]['ptol'];
echo $sum;
// 輸出 464
?>
如果還有更多...
$sum = 0;
for($i = 0; $i < count($arr); $i++) {
$sum += $arr[$i]['ptol'];
}
echo $sum;
④ php 二維數組求和
你這個二位數組裡面不是有這個[xiaoji]
那麼就foreach一下
$sum = 0;
foreach ($array as $key => $value ){
$sum += $array[$key]['xiaoji'];
}
echo $sum;
這里$array是你的數組的名字,$sum是全部[xiaoji]的和。
如果沒有這個你可以
$sum = 0;
foreach ($array as $key => $value ){
$sum += $array[$key]['consume'] * $array[$key]['settlement'];
}
echo $sum;
同樣 這里$array是你的數組的名字,$sum是全部['consume'] * ['settlement']的和。
如果是直接讀資料庫
SELECT SUM( `consume` * `settlement`) as sum FROM your_table
your_table是你的數據表的名字 直接查詢出來的就是全部['consume'] * ['settlement']的總和。
不知道你問的是不是這個意思?
⑤ php 二維數組通過鍵名把值相加,生成新數組
foreach ($b as $nodeIndex => $oneNode)
{
foreach ($oneNode as $key => $value)
{
$a[$nodeIndex][$key] += $value;
}
}
print_r($a);
⑥ php二維數組怎麼把相同name為小名的數組合並,並且他們的值c相加
你好,你可以如下操作
<?php
$new_arr=array();
foreach($arras$key=>$each){//遍歷之前的數組
if(array_key_exists($each['name'])){//檢測名字是否已經存在
$new_arr[$each['name']]['s']+=$each['s'];
}else{
$new_arr[$each['name']]=$each;
}
}
?>
希望能解決你的問題,望採納
⑦ 在PHP中一個二維數組中的一維數組的讓鍵名相同的 鍵值相加
不太清楚你的需求,array_push() 函數向第一個參數的數組尾部添加一個或多個元素,你可以定義一個數組,然後把兩個數組合並一塊,例如:$a=array('id'=1,'name'='n');$b=array('id'=2,'name'='m');$c=array();array_push($c,$a,$b);
⑧ php中計算二維數組中某一元素之和的函數是那個啊謝謝……
PHP數組的總結(很全面啊)
一、什麼是數組
數組就是一組數據的集合,把一系列數據組織起來,形成一個可操作的整體。數組的每個實體都包含兩項:鍵和值。
二、聲明數據
在PHP中聲明數組的方式主要有兩種:一是應用array()函數聲明數組,一是直接為數組元素賦值。
1array()函數聲明的數
一、什麼是數組
數組就是一組數據的集合,把一系列數據組織起來,形成一個可操作的整體。數組的每個實體都包含兩項:鍵和值。
二、聲明數據
在PHP中聲明數組的方式主要有兩種:一是應用array()函數聲明數組,一是直接為數組元素賦值。
<1>array()函數聲明的數組的方式array([mixed...])
參數mixed的語法為key=>value
如,<?php
$array=array("1"=>"編","2"=>"程","3"=>"詞","4"=>"典");
print_r($array);
echo
"<br>";
echo
$array[1];
//注意:下標默認是從0開始
echo
$array[2];
echo
$array[3];
echo
$array[4];
?>
<2>直接為數組元素賦值。如果在創建數組時不知所創建數組的大小,或在實際編寫程序時數組的大小可能發生變化,採用這種數組創建的方法較好。
如,<?php
$array[1]="I";
$array[2]="love";
$array[3]="PHP";
print_r($array);
//輸出所創建數組的結構
?>
三、數組的類型
PHP支持兩種數組:索引數組(indexed
array)和聯合數組(associative
array),前者使用數字作為鍵,後者使用字元串作為鍵。
四、輸出數組
在PHP中對數組元素輸出,可以通過echo和print語句來實現,但這只能對數組中某一元素進行輸出;要將數組結構輸出則要使用print_r()函數,其語法:print_r(mixed
expression),參數expression為普通的整形、字元型或實型變數則輸出該變數本身,如果該參數為數組,則按一定鍵值和元素的順序顯示出該數組中的所有元素。
五、數組的構造
一維數組:
當一個數組的元素是變數時,則稱其為一維數組。
聲明一位數組:
類型說明符
數組名[常量表達式];
二維數組:
當一個數組的元素是一個一位數組時,則稱之為二維數組。
如,<?php
$str
=
array
(
"網路編程語言"=>array
("PHP","JSP","ASP"),
"體育項目"=>array
("m"=>"足球","n"=>"籃球"));
print_r
(
$str)
;
?>
六、遍歷數組
遍歷數組中的所有元素是常用的一種操作,在遍歷的過程中可以完成查詢或其他功能。在PHP中遍歷數組的方法有多種,下面介紹最常用的兩種方法。
<1>使用foreach結構遍歷數組;
<2>使用list()函數遍歷數組,list()函數僅能用於數字索引的數組,且數字索引從0開始。
例:綜合使用list()和each()認證用戶登錄:
<?php
//輸出用戶登錄信息
while(list($name,$value)=each($_POST)){
if($name!="submit"){
echo
"$name=$value<br>";
}
}
?>
七、統計數組元素個數
在PHP中,使用count()函數對數組中的元素個數進行統計,語法為:int
coun(mixed
array[,int
mode]),其中參數array為必要參數,mode為可選參數,若選中COUNT——RECURSIVE(或1),本函數將遞歸地對數組數組。如,
<?php
$array
=
array("php"
=>
array("PHP函數參考大全","PHP程序開發範例寶典","PHP資料庫系統開發完全手冊"),
"asp"
=>
array("ASP經驗技巧寶典")
);
//聲明一個二維數組
echo
count($array,COUNT_RECURSIVE);//遞歸統計數組元素的個數,運行結果為6
?>
八、數組排序
<1>使用sort()和rsort()分別對數組進行升序和降序,如,
<?php
$array=array(5,26,37,18,9,42,88,66);
$array1=sort($array);
for($i=0;$i<count($array);$i++){
echo
$array[$i]." ";
}
echo
"<br>";
$array1=rsort($array);
for($i=0;$i<count($array);$i++){
echo
$array[$i]." ";
}
?>
運行結果:
5
9
18
26
37
42
66
88
88
66
42
37
26
18
9
5
<2>使用ksort()和asort()對關聯數組排序
如果使用了相關數組,在排序後還要保持關鍵字和值的排序一致,這是就需要使用ksort()和asort()函
數,如,
<?php
$array=array('php'=>1,'jsp'=>2,'asp'=>3);
ksort($array);
print_r($array);
echo
"<br>";
asort($array);
print_r($array);
?>
運行結果:
Array
(
[asp]
=>
3
[jsp]
=>
2
[php]
=>
1
)
Array
(
[php]
=>
1
[jsp]
=>
2
[asp]
=>
3
)
⑨ 求問php兩個二維數組中每個元素的相加
//假設$a、$b是你的兩個數組,下面把$b的值加到$a上
foreach($aas$k1=>$v1){
foreach($v1as$k2=>$v2)$a[$k1][$k2]+=$b[$k1][$k2];
}
⑩ CSV文件操作,PHP如何對滿足條件的二維數組進行求和
$陣列=陣列(
陣列(93001,3.99,'S',800),
陣列(93001,3.99,'S',3800),
陣列(93001,4,「 S',1000),
陣列(93003,4.01,'B',3300),
陣列(93003,4,'S',600),
陣列(93003,4, 'S',500),
陣列(93003,4,「B」,1000),
陣列(93003,4,「S」,1000),
陣列(93003,4 ,'S',200),
陣列(93003,3.99,'B',6700),
陣列(93003,4,'S',1600),
陣列(93022, 3.99,'S',14500),
陣列(93022,3.99,'S',800),
陣列(93103,3.99,'S',1000),
陣列(93103 3.99,'S',2000),
陣列(93103,3.99,'B',2000年),
陣列(93103,3.99,'S',1000),
);
$ = $收益率=陣列();
的foreach($陣列美元價值){
$數據[$值[0]。 「 - 」。美元的價值[1]。 「 - 」。值[2] ['A'] = $值[0];
$數據[$值[0]。 「 - 」。美元的價值[1]。 「 - 」。值[2] ['B'] = $值[1];
$數據[$值[0]。 「 - 」。美元的價值[1]。 「 - 」。值[2] ['C'] = $值[2];
$ [$值[0]。 「 - 」。美元的價值[1]。 「 - 」。值[2] ['值'] + = $值[3];
}
的foreach($ data的美元價值){
($值['C'] =='B'){
美元的價值= $ ['值'] * $值['B'];
} {
$數= - $值[VAL '] * $值['B'];
}
美元的回報[] =陣列($ ['A'],$值['B'],$值['C']值['值'],$號);
}
的回聲「」;
的print_r(返回);/ /返回為最終結果
時間就是生命,沒有理由浪費別人的時間,其實是無異於謀財害命。