3
$array[0] = 100;
$array[1] = 10;
$array[2] = 15;

key = (0,1)のようにキーで配列の合計を取得するにはどうすればよいsum = 110ですか?

4

8 に答える 8

3

試してみてください:

$array = array(
  0 => 100,
  1 => 10,
  2 => 15
);
$keys  = array(0, 1);
$sum   = 0;

foreach ( $keys as $key ) {
  $sum += $array[$key];
}
于 2013-01-07T12:16:50.387 に答える
3

最善かつ簡単な方法は、

$result = array_sum($your_array);
于 2013-01-07T12:19:11.207 に答える
3
$sum = array_sum(
    array_intersect_key($array, array_flip([0,1])
);

それをテストしませんでしたが、動作するはずです:)

于 2013-01-07T12:21:10.203 に答える
0

定義されたキーで配列を合計する私の解決策は次のとおりです。

$myArray=Array("Array Title","1000",2000,3000}; // array example with stings and integers

var_dump(array_intersect_key($myArray, array_flip(Array(1,2)))); // int(3000)
var_dump($myArray); // int(6000)

参考文献:

array_intersect_key

array_flip

于 2015-02-24T19:23:25.023 に答える
0
$array[0] = 100;
$array[1] = 10;


$array[2] = 15;

$sum = function($keys = array(),$arrayList= array())  {
        $s = 0;
        foreach ($arrayList as $key => $value) {
           if(in_array($key, $keys)) {
               $s+= $value;
            }
        }
        echo $s;
};
$sum(array(0,1),$array);
于 2013-01-07T12:27:15.590 に答える
0

これを試して

$array[0] = 100;
$array[1] = 10;
$array[2] = 15;

echo array_sum($array);

またはこれを試してください

$array[0] = 100;
$array[1] = 10;
$array[2] = 15;
$sum=0;
foreach (range(0,1) as $key)
{
    $sum = $sum+$array[$key];
}
echo $sum;
于 2013-12-11T04:48:50.203 に答える
-1

最初の 2 つのキーを合計する場合は、以下のコードを使用します。

array_sum(array_slice($array,0,2)); // will return 110

参考文献:

array_sum

array_slice

于 2013-01-07T12:17:52.583 に答える
-2
$count = 0;
for($i=0;$i<count($array);$i++){
 $count = $count + $array[$i];
}

echo $count;
于 2013-01-07T12:16:29.163 に答える