Как можно сделать условие компактнее, например, что бы не писать: if($file=="txt"||$file=="zip") А проще, например: if($file==("txt"||"zip")
Это не проще,это нарушение логики,в первом примере ты именно проверяешь действительно ли в $file лежит 'txt' или 'zip'.А во втором примере у тебя фактически получается $file == true, так как в скобках всегда будет true при таком условии: более наглядно можешь посмотреть: PHP: $file = 'ololo'; if($file==("txt"||"zip")) echo 'TRUE'; Код (Text): TRUE
не. массив и isset вместо 15 раз переменную писать. Плюс массив удобно в конфиг запихивать или в функцию передавать параметром.
А пример можно? Тип =(isset('zip'||'rar') ? '1' : '0'; Да? --- Добавлено --- Ну знаешь, когда условий у меня 63 писать в if повторяя одно и тоже, не разумно.
ооооооооооооооо.... Да тут говорить не о чем..... @Danil005, что, так сложно книжечку/мануал прочитать на русском, прежде чем проекты делать? P.S. я за PHP: if (in_array ( $file, [ 'txt', 'zip' ]) ) { /* ..... */ }
@mkramer, я изучаю по мере создания, так как ты ищешь то, что тебе нужно и запоминаешь. --- Добавлено --- Ну и забыл там скобку закрыть..
Не надо так. Есть мануал, в нём минимальный объём знаний языка, надо его прочитать. https://secure.php.net/manual/ru/langref.php. Если бы. Там бред сивой кобылы написан, а не скобку забыл закрыть. Нормальное решение тебе уже 3 раза предложено, в том числе мной, а ты не видишь.
@mkramer, я видел и сделал, спасибо, просто ответил на твое сообщения, как говориться - методом тыка все. )
Когда у тебя надо 63 раза писать if, то, скорее всего у тебя где-то что-то пошло не так. Вероятно, еще на стадии проектирования.
как вариант добавляй расширения файлов через регулярные выражения. Всеж таки меньше букафф будет PHP: if($file == "*.blablabla" и так далее)
Регулярка - плохое решение. В 95% случаев регулярка - плохое решение. В данном же случае оно вообще неприемлемое. И да, то, что вы написали, не регулярка.
https://github.com/pinpie/pinpie/blob/stable/src/PP.php#L162 раньше было много регулярок. Но хитрым образом я свёл все регулярки в одну хорошую. Теперь осталась одна, которая парсит все типы тегов.