在php中添加数组的值

时间:2017-10-13 06:56:30

标签: php arrays yii2-advanced-app addition

嗨我知道它非常简单,但我坚持这个。 我通过使用数据库中的连接来获取数据..现在我得到了数组中的值。我想在变量中添加这两个值。 代码如下..

$sql = "SELECT event_details.max_team_size FROM booking_details INNER JOIN event_details on booking_details.subcategory_id=event_details.id WHERE booking_details.`booking_id` = ".$booking_id." ";

        $command = Yii::$app->db->createCommand($sql);
        $array = $command->queryAll();

$array有这样的值..

Array
(
[0] => Array
    (
        [max_team_size] => 6
    )

[1] => Array
    (
        [max_team_size] => 8
    )
 )

我想将这两个max_team_size添加到单个变量中,稍后再使用它进行比较。

3 个答案:

答案 0 :(得分:2)

$sum = 0;
foreach($array as $data){
    $sum  += $data->max_team_size;
}
echo $sum;

答案 1 :(得分:1)

总之,您也可以使用SUM函数

从SQL获得
SELECT SUM(event_details.max_team_size) FROM booking_details...

在Yii中,解决方案将是

$sql = "SELECT SUM(event_details.max_team_size) as total FROM booking_details INNER JOIN event_details on booking_details.subcategory_id=event_details.id WHERE booking_details.`booking_id` = ".$booking_id." ";
$command = Yii::$app->db->createCommand($sql);
$array = $command->queryRow();

在PHP中对单个数组中的特定键求和,可以使用array_column函数将其转换为单个数组,然后使用sum函数

$array = array_column($array, 'max_team_size');
$total = array_sum($array);

注意:对于PHP<而且,array_column将使用PHP> = 5.5。 5.5你可以使用foreach循环

答案 2 :(得分:0)

像这样定义一个空数组:

$maxArr = array();

您现在可以为您的阵列运行foreach循环并添加变量。 像这样:

foreach($gotArr as $key=>$val){

}