Крошечный совет: PHP использует похожую на C обработку логического типа в том смысле, что фактически любое ненулевое значение считается «истинным» в случае нахождения в условной части оператора if-if. например, если вы пропустите символ '=' в конструкции сравнения и наберете if($var = "val")
вместо if($var == "val")
, вы всегда получите истинное значение в этом утверждении, потому что оператор '=' вернется в результате значения операции set из правая часть «val», которая в свою очередь преобразуется в «true». так что лучше написать литерал в левой части условия сравнения if("val" == $var)
, потому что в этом случае вы получите ошибку, если потеряете один символ '=' в сравнении ==.
поэтому ваше if-выражение должно выглядеть так:
if('zip' == $ext || 'png' == $ext) { echo "Is it possible ?" }
также, вероятно, было бы лучше поместить литералы 'zip' и 'png' в константы с именами FILE_TYPE_ZIP, FILE_TYPE_PNG или определить некий перечислимый объект, такой как глобальный PHP-массив, который находится в верхней части исходной страницы или, возможно, даже создайте некоторый отдельный класс SupportedFileTypes во внешнем файле, который будет выделять поддерживаемые типы файлов вашей программы (в этом случае проверьте PHP и перечисления для получения подробной информации).
В начале разработки вопрос производительности не должен беспокоить вас, потому что очень важно написать код, который легко читать и развивать / оптимизировать в будущем.