Это одна из тех задач, в которых формулировка может сбить человека с толку и направить по неверному пути. Начну с…
Нужно сделать проверку числа на кратность 3 или 5. Если число кратно 3, то вывести на экран «third», если число равно 5, то вывести «fifth», а если число одновременно кратно и трём и пяти — вывести «bingo!».
Здесь есть 2 момента, на которые стоит обратить внимание. Первый и самый очевидный — проверку на кратность и 3 и 5 нужно делать в первую очередь, иначе вывод на экран будет некорректным.
Второй момент менее очевиден для тех, кто написал бы что-то вроде if($i % 3 === 0 && $i % 5 === 0). Это условие можно оптимизировать как минимум на 2 оператора. Догадались? Можно сократить один из операторов сравнения и оператор логического ИЛИ. Наиболее оптимальным эквивалентом будет: if($i % 15 === 0).Казалось бы мелочь, однако, из таких мелочей и складывается высокая производительность highload систем.