Что объясняет PHP-оператор %
в полной мере?
Включение примеров было бы неплохо!
Что объясняет PHP-оператор %
в полной мере?
Включение примеров было бы неплохо!
Это оператор модуля, который дает целочисленный остаток от деления например.
7 / 2 = 3.5 // 3 remainder 1
7 % 2 = 1 // the remainder
Очевидный пример реального мира - это определение того, является ли число нечетным или даже
if (($ n% 2) == 0) число четное, иначе это нечетно... полезно, когда вы хотите отображать альтернативные строки в таблице разных цветов
%
является оператором модуля.
$num1 = 160;
$num2 = 15;
$result = $num1 % $num2;
echo "The modulus of these numbers is $result";
%
используется для остатка.
Пример:
Печать, если число четное или нечетное
(@num % 2 == 0 )? 'even' : 'odd'
Это оператор модуля. Он дает вам "остаток" после деления. Это довольно стандартный оператор.
Вот ссылка PHP для Арифметические операторы.
Он даст вам модулю или "мод" из двух чисел, а это остаток, когда вы разделите два числа. Это обычный арифметический оператор, и я не могу думать о языке, который его не имеет. Дополнительная информация находится в Работа в режиме Modulo.
Существует два способа его использования. Наиболее распространенным является любой другой арифметический оператор:
$bwah = 3 % 1; // == 0
$bwah = 10 % 3; // == 1
Существует также сокращенный способ сделать это, как +=
, -=
, *=
и /=
:
$bwah = 10;
$bwah %= 3; // == 1 ... it like saying 10 % 3
Как проблема с реальным словом, я использую его для создания HTML, особенно таблицы:
//Rows
for ($i=0; $i<30; $i++) {
if ($i%3 == 0)
echo('<tr>');
echo('<td>'.$i.'</td>');
if ($i%3 == 2)
echo('</tr>');
}
Например, %
может использоваться для установки дополнительного класса CSS для каждого третьего элемента в HTML:
for ($i = 1; $i <= 30; $i++) {
$additionalCssClass = ($i % 3 == 0 ) ? ' last' : '';
?><div class="catalogItem<?php echo $additionalCssClass;?>"> </div><?
}
Просто использование оператора% модуля:
if($nextImage == $ImagesTotal){
//reset counting
$nextImage = 0;
} else {
//increase counting
$nextImage++;
}
можно упростить до:
$nextImage = ++$nextImage % $ImagesTotal;
//$nextImage will allways be a value between 0 and $ImagesTotal;