#php #arrays #sum
#php #массивы #сумма
Вопрос:
Я пытаюсь подсчитать значение выбранных флажков. Я получаю отдельные значения, но не могу понять, как их суммировать.
<?php
$q1= isset($_POST["question1"])
? implode(',', $_POST["question1"])
: 'no selection made';
?>
Вот мои флажки:
<label>
<input type="checkbox" name="question1[]" value="0" id="question1_0" />
Not Applicable</label>
<br />
<label>
<input type="checkbox" name="question1[]" value="7.69" id="question1_1" />
Tells the truth.</label>
<br />
<label>
<input type="checkbox" name="question1[]" value="7.69" id="question1_2" />
Shows respect for others.</label>
<br />
<label>
<input type="checkbox" name="question1[]" value="7.69" id="question1_3" />
Is straight forward- does not have a "hidden agenda."</label>
<br />
<label>
Ответ №1:
Легко, просто используйте array_sum
:
$q = empty($_POST["question1"]) ? 0 : array_sum($_POST["question1"]);
Комментарии:
1. Следующий вопрос: как я могу настроить это так, чтобы он работал с более чем одним вопросом?
2. @kamalo: назовите свои поля
question[0][]
,question[0][]
, … ,question[N][]
,question[N][]
так что$_POST['question']
это массив массивов. Выполните цикл по нему и запуститеarray_sum
для каждого подмассива.