dim565
Искусственный Интеллект
(424764)
4 года назад
Вижу только вариант с извлечением цифр из значения ячейки.
$source = 'q1=1005|q2=1000|q3=999|q4=1003|';
preg_match_all('/=(\d+)\|/', $source, $matches);
$sum = array_sum ($matches[1]); // $matches[0] содержит цифры с мусором, $matches[1] только цифры
echo $sum; // выведет 4007
Вместо $source напишите код для получения значения нужного столбца
ПаштетЗнаток (331)
4 года назад
Мне предложили еще такой вариант
function sum_s1234($stats) {
$kvArray = explode('|', $stats);
$sum = 0;
foreach ($kvArray as $element) {
$kv = explode('=', $element);
$key = $kv[0];
$value = $kv[1];
if ($key === 's1' || $key === 's2' || $key === 's3' || $key === 's4') {
$num = intval($value);
$sum += $num;
}
}
return $sum;
}
Есть таблица SQL, в таблице есть столбец со значениями
q1=1005|q2=1000|q3=999|q4=1003|
Как пропустить через PHP что бы оно сложило q1+q2+q3+q4
таблица stats, столбец тоже stats
function sum_q1234($stats) {
????
}
Спасибо.