Как в php суммировать все числа с классом?

Ссылка скопирована
PHP
1 ответ

Всем привет!
Уважаемые знатоки, подскажите пожалуйста, как суммировать все числовые значения и вывести сумму в определенном месте?
Подробнее:
Через ACF создал числовое поле с классом ".chislovoe_znachenie", вывожу это поле в определенной карточке в файле single-cards.php
В карточке вывожу следующим образом:
1. Создаю переменную:

$chislo = get_field('chislovoe_znachenie'); $formatted_chislo = number_format($chislo, 0, '', ' '); //разбиваю на разряды

$chislo = get_field('chislovoe_znachenie'); $formatted_chislo = number_format($chislo, 0, '', ' '); //разбиваю на разряды

2. Вывожу в карточке:
<?php echo $formatted_chislo; ?>
В каждой карточке значение будет разное.
Кол-во карточек может изменяться.
Задача такая:
Суммировать все поля с классом ".chislovoe_znachenie", и вывести на главной с разделением по разрядам.

Дополнительно:

класс тут совершенно ни при чём, т.к. нужно найти у ACF способ получить значение для поля chislovoe_znachenie у всех записей (не работал с ACF), сложить их, а потом вывести точно так же как и одиночное поле с разбиением на разряды

  • Спасибо!
Нужно решить такую задачу?

Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.

Заказать помощь
Лучший ответ
1
Анна SEO Ответ

Для суммирования всех чисел с определенным классом в PHP, вам нужно использовать DOMDocument для парсинга HTML и XPath для выбора элементов с заданным классом. Затем вы можете пройтись по всем найденным элементам, извлечь числовое значение и добавить его к общей сумме.

Пример кода:

$html = '<div class="number">10</div><div class="number">20</div><div class="number">30</div>';
 
$doc = new DOMDocument();
$doc-&gt;loadHTML($html);
 
$xpath = new DOMXPath($doc);
$elements = $xpath-&gt;query("//div[@class='number']");
 
$total = 0;
foreach ($elements as $element) {
    $total += (int)$element-&gt;nodeValue;
}
 
echo $total; // Выведет 60

$html = '<div class="number">10</div><div class="number">20</div><div class="number">30</div>'; $doc = new DOMDocument(); $doc-&gt;loadHTML($html); $xpath = new DOMXPath($doc); $elements = $xpath-&gt;query("//div[@class='number']"); $total = 0; foreach ($elements as $element) { $total += (int)$element-&gt;nodeValue; } echo $total; // Выведет 60

В этом примере мы создаем HTML строку с несколькими div элементами, каждый из которых имеет класс "number" и содержит числовое значение. Мы используем DOMDocument для загрузки HTML и DOMXPath для выбора всех div элементов с классом "number". Затем мы проходим по каждому элементу, извлекаем числовое значение (преобразуя его в целое число) и добавляем его к переменной $total. В результате мы получаем сумму всех чисел с классом "number" и выводим ее.

Таким образом, данный код поможет вам суммировать все числа с определенным классом в PHP.

Другие ответы (0)

Пока нет других ответов. Будьте первым, кто поможет автору.

Ответить на вопрос

комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Вам также может быть интересно