Intereting Posts
Определите, является ли 10-значная строка действительной. Amazon ASIN Планирование php-скриптов имя экранирующего столбца с PDO Почему функция override_function возвращается как неопределенная функция Учение вызывает много запросов для отношений «один ко многим» подстрока в html Запрос Sparql ошибочно повлек за собой неправильную геологию на + inexistence в результатах свойства, которое мне было необходимо Шрифт Awesome не отображается в браузере отображать данные из базы данных в определенном порядке: php или mysql? Как запустить django и wordpress на сервере NGINX, используя тот же домен? Текстовое поле скрывается после нажатия кнопки отмены Сделайте таймер обратного отсчета кнопки, который будет отключен навсегда после 5 минут даже при обновлении страницы, он должен оставаться отключенным PHP Использование File_get_Contents () для предварительного заполнения формы htaccess ErrorDocument 404 перенаправление не работает Zend_Form: как проверить 2 поля одинаковы

PHP – если число делится на 3 и 5, то echo

Я новичок в PHP и пытаюсь создать следующее, минимизируя количество необходимого кода. PHP должен отображать список из 100, затем отображать, если число равно /, 3, 5 или 3 и 5. Если ни один из них не показывает ничего.

Это то, что у меня есть до сих пор, но любая помощь будет отличной, так как не уверен в отношении / на 3 и 5 бит, как вы можете видеть ниже.

<?php $var = range(0, 100); ?> <table> <?php foreach ($var as &$number) { echo " <tr> <td>$number</td> <td>"; if($number % 3 == 0) { echo "BY3"; } elseif ($number % 5 == 0) { echo "BY5"; } elseif ($number % 3 and 5 == 0) { echo "BY3 AND 5"; } echo "</td></tr>"; } ?> </table> 

благодаря

Нет … вы должны сначала проверить, если он делится на 15 (3×5) (или 3 и 5) и после того, как вы можете сделать другие проверки:

 if($number % 15 == 0) { echo "BY3 AND 5"; } elseif ($number % 5 == 0) { echo "BY5"; } elseif ($number % 3 == 0) { echo "BY3"; } echo "</td></tr>"; ?> 

Поскольку каждое число, делящееся на 15, также делится на 3 и 5. Таким образом, ваш последний чек никогда не ударил

если я правильно читаю ваш вопрос, то вы ищете:

 if ($number % 3 == 0 && $number %5 == 0) { echo "BY3 AND 5"; } elseif ($number % 3 == 0) { echo "BY3"; } elseif ($number % 5 == 0) { echo "BY5"; } 

Альтернативная версия:

 echo ($number % 3 ? ($number % 5 ? "BY3 and 5" : "BY 3") : ($number % 5 ? "BY 5" : "")); 
 $num_count = 100; $div_3 = "Divisible by 3"; $div_5 = "Divisible by 5"; $div_both = "Divisible by 3 and 5"; $not_div = "Not Divisible by 3 or 5"; for($i=0;$i<=$num_count;$i++) { switch($i) { case ($i%15==0): echo $i." (".$div_both.")</br>"; break; case ($i%3==0): echo $i." (".$div_3.")</br>"; break; case ($i%5==0): echo $i." (".$div_5.")</br>"; break; default: echo $i."</br>"; break; } } 

Обновите код, как указано ниже.

 <?php $var = range(0, 100); ?> <table> <?php foreach ($var as &$number) { echo " <tr> <td>$number</td> <td>"; if($number % 3 == 0 && $number % 5 == 0) { echo "BY3 AND 5"; } elseif ($number % 5 == 0) { echo "BY5"; } elseif ($number % 3 == 0) { echo "BY3"; } echo "</td></tr>"; } ?> 

 <?php if($number % 5 == 0 && $number % 3 == 0) { echo "BY3 AND 5"; } elseif ($number % 5 == 0) { echo "BY5"; } elseif ($number % 3 == 0) { echo "BY3"; } else{ echo "NOT BY3 OR 5"; } ?> 
 if($number % 15 == 0) { echo "Divisible by 3 and 5"; } elseif ($number % 5 == 0) { echo "Divisible by 5"; } elseif ($number % 3 == 0) { echo "Divisible by 3"; } 

Нет необходимости делать три заявления:

 echo "<table border='1'>"; for ($i = 1; $i <= 100; $i++) { echo "<tr><td>{$i}</td><td>"; if ($i % 3 == 0) echo "BY3 "; if ($i % 5 == 0) echo "BY5"; echo "</td></tr>\n"; } echo "</table>";