Как достать часть строки

Тема в разделе "PHP", создана пользователем yeaahhh, 15 янв 2011.

Модераторы: latteo
  1. yeaahhh

    yeaahhh

    Регистр.:
    8 май 2008
    Сообщения:
    278
    Симпатии:
    11
    Друзья. Подскажите, как достать часть строки.
    Строка: ываыва.ываыва.ываыва.zip
    Она не статична.. может быть и sdfsdfsdf.xml,
    или sjd.fnsdf.rar
    ВОобщем нужно узнать формат загружаемого файла..
    Через explode не получается, так как может быть несколько "точек"..
    Заранее большое спасибо..
     
  2. chang

    chang

    Регистр.:
    20 ноя 2009
    Сообщения:
    363
    Симпатии:
    117

    PHP:
    print_R(pathinfo('http://asd.ss/asdasd.zip'));

     
  3. Freeborn

    Freeborn Постоялец

    Регистр.:
    31 окт 2008
    Сообщения:
    62
    Симпатии:
    21
    PHP:
    $str 'ываыва.ываыва.ываыва.zip';
    echo 
    array_pop(explode('.',$str));
     
  4. CnecHa3

    CnecHa3 Постоялец

    Регистр.:
    10 фев 2007
    Сообщения:
    105
    Симпатии:
    20
    PHP:
    $str 'ываыва.ываыва.ываыва.zip';
    echo 
    end(explode('.',$str));  // zip
     
  5. trooll

    trooll PHP кодер

    Регистр.:
    22 дек 2008
    Сообщения:
    503
    Симпатии:
    116
    Для разнообразия:
    PHP:
    $v 'kakoito.fail.s.chemto.zip';
    $v substr($v, (strrpos($v,".") + 1), strlen($v));
    echo 
    'формат файла: '.$v
    В общем как вы заметили вариантов реализации множество...
     
  6. propovednik

    propovednik Постоялец

    Регистр.:
    16 май 2008
    Сообщения:
    104
    Симпатии:
    21
    Не путайте формат и расширение файла. Расширение получить достаточно легко, но далее очень рекомендую проверять что за зверь притаился например в xml или jpg файле
     
  7. trooll

    trooll PHP кодер

    Регистр.:
    22 дек 2008
    Сообщения:
    503
    Симпатии:
    116
    Я думаю это уже отклонение от темы.

    ТС конкретно указал что ему необходимо (часть строки после последней точки), хоть и спутал расширение с форматом (Types MIME).
     
  8. buhito

    buhito Создатель

    Регистр.:
    7 июн 2010
    Сообщения:
    10
    Симпатии:
    0
    можно еще и таким образом:
    Код:
    <?php
    $string = "sjhfdh.sdhfgkljd.idsufg.gif";
    $type = explode(".", $string);
    echo $type[count($type) - 1];
    ?> 
     
  9. CnecHa3

    CnecHa3 Постоялец

    Регистр.:
    10 фев 2007
    Сообщения:
    105
    Симпатии:
    20
    тоже самое что и
    PHP:
    $str 'ываыва.ываыва.ываыва.zip';
    echo 
    end(explode('.',$str));  // zip  
    end() - возвращает последние значение в массиве.