Хочу рассказать Вам все о сайтах, что узнал сам за 15 лет.
Блог Виталия Жукова Vitalik.WS Свой сайт с нуля - легко!
Обо мне, как об авторе блога.
Подробнее
Vitalik.WSЗаметки → Как проверить, делится ли одно число на другое / узнать кратность на PHP?

Как проверить, делится ли одно число на другое / узнать кратность на PHP?
Заметка на тему: PHP

Иногда в разработке какого-нибудь проекта появляется острая необходимость нахождения кратности чисел, то есть определения, делится ли одно число на другое.

Это бывает необходимо, когда, например, нам нужно разбить элементы в цикле в группы по 5 штук. В таком случае мы считаем каждый элемент в массиве с помощью прибавления единицы в каждом элементе цикла и в итоге мы можем видеть, какой по счету элемент идет сейчас. Сложновато звучит, но проще тут не напишешь - это нужно понять, поэтому лучше покажу на примере:
//Предположим, что у нас есть массив данных из базы данных,
// в котором может быть разное количество элементов.
//Например, пускай в этот момент там 10 элементов.
$db_array = array("a", "b", "c", "d", "e", "f", "g", "q", "w", "e");

//И нам нужно выбрать только те, чье счетное количество по порядку
// будет кратно 5 для разделения на группы по 5 штук.
//Можно было бы просто перечислить ==5 ==10 ==15, 
// но а если всего элементов будет 100?
//Тогда это перечисление будет совсем не актуально.

//Тут на выручку приходит оператор деления % вместе с ведением 
// счета всех элементов по-порядку в цикле.
$corrent_count=0; //здесь будем вести счет элементов цикла
foreach ($db_array AS $element)
{
  //теперь, зная точную цифру по-порядку,
  //можно проверить её на делимость к 5
  if (($corrent_count % 5) == 0)
   {
     //делится на 5
     echo "кратно пяти";
   }
   else
   {
      //НЕ делится на 5
      echo "не кратно пяти";
   }
   //прибавляем 1 для следующего элемента цикла
   $corrent_count++;
}

В итоге мы всегда будем знать, когда у нас будет пятый элемент в цикле, не зависимо от того, сколько элементов будет в массиве - 10, 100 или даже 1000. И на основе этого можно будет в месте кода, где написано "//делится на 5" вставлять нужный код, разделяющий все это на группы по 5 штук.

Может быть у кого-то задача еще проще: просто нужно узнать, например, делится ли число на 2. Это можно сделать вот таким кодом:
$i = rand(1,1000); //любое число, которое нужно проверить
if (($i % 2) == 0)
{
  echo "делится 2 без остатка";
}
else
{
  echo "НЕ делится на 2 (есть остаток)";
}

По аналогии можно проверить кратность к любому числу, не обязательно к двум.

На этом думаю, что вопрос с определением кратности / делимости числа в PHP можно закрыть. Но все же если появятся какие-то вопросы, то не бойтесь задавать их в комментариях. Всем удачи в PHP кодинге! =)

Все комментарии к заметке "Как проверить, делится ли одно число на другое / узнать кратность на PHP?"

  • Комментариев еще нет.
    Оставьте свой комментарий первым!
Написать свой комментарий:
Отправить
ВНИМАНИЕ! Пожалуйста НЕ пишите в комментариях рекламу, оскорбления, бессмыслицу и прочие проявления интернет-нечисти, так как эти сообщения всеравно не будут опубликованы. Пишите исключительно по теме и ваш комментарий обязательно будет опубликован, а возможно и прокомментирован.
 Подписывайтесь на мой блог
Хотите первыми узнавать о самом интересном? Тогда подпишитесь на рассылку новостей.
Подписаться
Подписавшись на рассылку, Вы всегда будете в первую очередь узнавать о самой важной и полезной для блоггеров и веб-мастеров информации.