![]() |
|
Модераторы: Aliance, skyboy, MoLeX, ksnk |
![]()
|
|
| DioNiR |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 130 Регистрация: 30.12.2006 Репутация: нет Всего: нет |
У меня есть разные файлы с разными расширениями.
Проьлема такова так как я с регулярками почемуто не дружу и не знаю реально ли так сделть. Нужно узнать расширение файла. Проверить существует ли файл расширение.php и вставить его. Если нет то вставляет какой нить по стандарту. как такое организовать? --------------------
Думали это конец? Ха, всё только начинается. |
|||
|
||||
| mishaSL |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1046 Регистрация: 10.1.2007 Где: Санкт-Петербург Репутация: 9 Всего: 54 |
DioNiR, опишите проблему четче, а то непонятно что и где Вы собираетесь проверять. Если Вам необходимо проверить существование файла, то можете воспользоваться file_exists()
Если Вы хотите из переменной содержащей имя файла получить его расширение, то можно так:
-------------------- Лучший способ научиться программированию - это посмотреть как это делают другие... |
|||
|
||||
| SelenIT |
|
|||
![]() баг форума ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3996 Регистрация: 17.10.2006 Где: Pale Blue Dot Репутация: 8 Всего: 401 |
mishaSL, имхо, брать расширение файла регулярками - все же перебор. Тем более пример выше не "возьмет", к примеру, .mp3 или .class. По-моему, для большинства практических целей вполне достаточно strrchr('.', $name). А если нужны все расширения (.tar.gz) - то что-нибудь вроде такого...
-------------------- Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму! |
|||
|
||||
| mishaSL |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1046 Регистрация: 10.1.2007 Где: Санкт-Петербург Репутация: 9 Всего: 54 |
.class - возьмет, а про цифры я и забыл, тогда лучше так:
На практике часто используются имена такого вида: class.file.php У твоего подхода будут проблемки с такими именами... -------------------- Лучший способ научиться программированию - это посмотреть как это делают другие... |
|||
|
||||
| SelenIT |
|
|||
![]() баг форума ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3996 Регистрация: 17.10.2006 Где: Pale Blue Dot Репутация: 8 Всего: 401 |
mishaSL, так я это и имел в виду - все зависит от того, что считаем расширением. Если только последнее - то достаточно strrchr, если все "от первой точки", как в примере с .tar.gz - то эксплод на 2 части по первой точке. Ну а если нужна полная гибкость и .tar.gz необходимо считать расширением, а class.file в Вашем последнем примере - частью имени, тогда, наверное, действительно только регулярка вроде
p.s. А .class Ваш вариант все-таки не возьмет - там 5 букв... -------------------- Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму! |
|||
|
||||
| mishaSL |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1046 Регистрация: 10.1.2007 Где: Санкт-Петербург Репутация: 9 Всего: 54 |
Да это у меня голова после праздника плохо работает... -------------------- Лучший способ научиться программированию - это посмотреть как это делают другие... |
|||
|
||||
| DioNiR |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 130 Регистрация: 30.12.2006 Репутация: нет Всего: нет |
Воспользовался
Работает так как и нужно. --------------------
Думали это конец? Ха, всё только начинается. |
|||
|
||||
| SelenIT |
|
|||
![]() баг форума ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3996 Регистрация: 17.10.2006 Где: Pale Blue Dot Репутация: 8 Всего: 401 |
DioNiR, обязательно надо было из множества легких вариантов выбрать самый сложный и наверняка в данной конкретной задаче избыточный...
-------------------- Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму! |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Тексты | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |