ФорумПрограммированиеPHP для идиотов → Filetype или Как обрезать имя.

Filetype или Как обрезать имя.

  • MoonEvil

    Сообщения: 21 Репутация: N Группа: Кто попало

    Spritz 1 апреля 2011 г. 13:00

    Доброго времени суток всем.

    Задача которая передомной стоит:
    Определить тип файла который лежит в определенной котегории.

    Сделанно:
    Открываю категорию, смотрю какие файлы там есть. вывожу их.
    Но при выводе типа файла через функцию Filetype($dir.$type), он выдает везде file, хотя файлы все разные.

    Подскажите как сделать:
    Беру имя файла $file (привер foto.jpg), как сделать так чтобы данная переменная обризала все что есть до точки и была ровна такому виду .jpg иди просто jpg???

  • NRG

    Сообщения: 4761 Репутация: N Группа: в ухо

    Spritz 1 апреля 2011 г. 13:18, спустя 17 минут 57 секунд

    $loipop = explode('.', $filename);
    $result = array_pop($lolipop);
  • MoonEvil

    Сообщения: 21 Репутация: N Группа: Кто попало

    Spritz 1 апреля 2011 г. 13:55, спустя 36 минут 33 секунды

    Warning: array_pop() [function.array-pop]: The argument should be an array

    мм?
  • NRG

    Сообщения: 4761 Репутация: N Группа: в ухо

    Spritz 1 апреля 2011 г. 14:06, спустя 11 минут 24 секунды


    Warning: array_pop() [function.array-pop]: The argument should be an array

    мм?
    ну добавь проверку на is_array($lolipop), вдруг у тебя имя файла без расширения
  • Flare

    Сообщения: 284 Репутация: N Группа: Кто попало

    Spritz 1 апреля 2011 г. 14:13, спустя 7 минут 4 секунды

    $ext = pathinfo($filename, PATHINFO_EXTENSION);
    Спустя 85 сек.
    или если надо весь массив получить:
    $path_info = pathinfo('/foo/bar/baz.bill');
    echo $path_info['extension']; // "bill"
  • MoonEvil

    Сообщения: 21 Репутация: N Группа: Кто попало

    Spritz 1 апреля 2011 г. 14:15, спустя 1 минуту 36 секунд


    Сделал вот так:

    $file = "name.jpg";
    $loipop = explode(".", $file);
    //$result = array_pop($lolipop);
    echo $loipop[1];


    Выход: $loipop[1] = jpg


    Всем спасибо.
  • truth4oll

    Сообщения: 463 Репутация: N Группа: Адекваты

    Spritz 1 апреля 2011 г. 14:37, спустя 22 минуты 26 секунд

    там в одном случае лолипоп, а в другом лоипоп
    MoonEvil, думай мозгами
  • Абырвалг

    Сообщения: 6480 Репутация: N Группа: Джедаи

    Spritz 1 апреля 2011 г. 14:54, спустя 16 минут 43 секунды

    pathinfo как-то хуево работал, когда там кириллица в имени файла
  • nya

    Сообщения: 22 Репутация: N Группа: Кто попало

    Spritz 1 апреля 2011 г. 15:06, спустя 11 минут 46 секунд


    Доброго времени суток всем.

    Задача которая передомной стоит:
    Определить тип файла который лежит в определенной котегории.

    Сделанно:
    Открываю категорию, смотрю какие файлы там есть. вывожу их.
    Но при выводе типа файла через функцию Filetype($dir.$type), он выдает везде file, хотя файлы все разные.

    Подскажите как сделать:
    Беру имя файла $file (привер foto.jpg), как сделать так чтобы данная переменная обризала все что есть до точки и была ровна такому виду .jpg иди просто jpg???




    >>> import os
    >>> filename = 'facepalm.jpeg'
    >>> os.path.splitext(filename)[1][1:]
    'jpeg'
  • NRG

    Сообщения: 4761 Репутация: N Группа: в ухо

    Spritz 1 апреля 2011 г. 16:22, спустя 1 час 16 минут 42 секунды



    Сделал вот так:

    $file = "name.jpg";
    $loipop = explode(".", $file);
    //$result = array_pop($lolipop);
    echo $loipop[1];


    Выход: $loipop[1] = jpg


    Всем спасибо.
    а как он у тебя будет работать при имени файла red.hot.chili.peppers.californication.mp3 ?

Пожалуйста, авторизуйтесь, чтобы написать комментарий!