Могу ли я упростить этот код? Я получаю пять строк от SELECT
запрос, обрезая их до только чисел и добавляя их.
$sum = preg_replace("/[^0-9]/","",$row['AB']) + preg_replace("/[^0-9]/","",$row['CD']) + preg_replace("/[^0-9]/","",$row['EF']) + preg_replace("/[^0-9]/","",$row['GH']) + preg_replace("/[^0-9]/","",$row['IJ']);
Могу ли я сделать что-то вроде этого:
preg_replace("/[^0-9]/","",$sum = $row['AB'] + $row['CD'] + $row['EF'] + $row['GH'] + $row['IJ']);
Вы можете написать простой цикл, чтобы уменьшить дублирование кода:
При условии, что ваш sql выбирает только необходимые столбцы:
$sum = 0;
foreach($row as $item)
$sum += preg_replace("/[^0-9]/","",$item);
Если у вас есть больше столбцов в строке (и вам действительно нужны эти данные, чтобы вы не могли просто изменить SQL):
$sum = 0;
foreach(['AB','CD','EF','GH','IJ'] as $key)
$sum += preg_replace("/[^0-9]/","",$row[$key]);
Других решений пока нет …