Получение списка расширений файлов с помощью функции `WP_GET_EXT_TYPES()`

WP_GET_EXT_TYPES() │ WP 4.6.0

Функция WP_GET_EXT_TYPES() позволяет получить список распространённых файловых расширений и их типов.

Описание

  • Время выполнения: 1 раз — 0.00001 сек (скорость света) | 50000 раз — 0.01 сек (скорость света)
  • PHP: 7.0.8, WP: 4.6

Возвращаемое значение

Функция возвращает многомерный массив типов файлов, сгруппированных по расширениям.

Применение

Чтобы использовать функцию, просто вызовите её:

wp_get_ext_types();

Примеры

Пример 1: Получение массива всех расширений

$ext = wp_get_ext_types();

/* 
$ext будет содержать:

array (
  'image' => array (
    0 => 'jpg',
    1 => 'jpeg',
    2 => 'jpe',
    3 => 'gif',
    4 => 'png',
    5 => 'bmp',
    6 => 'tif',
    7 => 'tiff',
    8 => 'ico',
  ),
  'audio' => array (
    0 => 'aac',
    1 => 'ac3',
    2 => 'aif',
    3 => 'aiff',
    4 => 'm3a',
    5 => 'm4a',
    6 => 'm4b',
    7 => 'mka',
    8 => 'mp1',
    9 => 'mp2',
    10 => 'mp3',
    11 => 'ogg',
    12 => 'oga',
    13 => 'ram',
    14 => 'wav',
    15 => 'wma',
  ),
  'video' => array (
    0 => '3g2',
    1 => '3gp',
    2 => '3gpp',
    3 => 'asf',
    4 => 'avi',
    5 => 'divx',
    6 => 'dv',
    7 => 'flv',
    8 => 'm4v',
    9 => 'mkv',
    10 => 'mov',
    11 => 'mp4',
    12 => 'mpeg',
    13 => 'mpg',
    14 => 'mpv',
    15 => 'ogm',
    16 => 'ogv',
    17 => 'qt',
    18 => 'rm',
    19 => 'vob',
    20 => 'wmv',
  ),
  'document' => array (
    0 => 'doc',
    1 => 'docx',
    2 => 'docm',
    3 => 'dotm',
    4 => 'odt',
    5 => 'pages',
    6 => 'pdf',
    7 => 'xps',
    8 => 'oxps',
    9 => 'rtf',
    10 => 'wp',
    11 => 'wpd',
    12 => 'psd',
    13 => 'xcf',
  ),
  'spreadsheet' => array (
    0 => 'numbers',
    1 => 'ods',
    2 => 'xls',
    3 => 'xlsx',
    4 => 'xlsm',
    5 => 'xlsb',
  ),
  'interactive' => array (
    0 => 'swf',
    1 => 'key',
    2 => 'ppt',
    3 => 'pptx',
    4 => 'pptm',
    5 => 'pps',
    6 => 'ppsx',
    7 => 'ppsm',
    8 => 'sldx',
    9 => 'sldm',
    10 => 'odp',
  ),
  'text' => array (
    0 => 'asc',
    1 => 'csv',
    2 => 'tsv',
    3 => 'txt',
  ),
  'archive' => array (
    0 => 'bz2',
    1 => 'cab',
    2 => 'dmg',
    3 => 'gz',
    4 => 'rar',
    5 => 'sea',
    6 => 'sit',
    7 => 'sqx',
    8 => 'tar',
    9 => 'tgz',
    10 => 'zip',
    11 => '7z',
  ),
  'code' => array (
    0 => 'css',
    1 => 'htm',
    2 => 'html',
    3 => 'php',
    4 => 'js',
  ),
)
*/

Изменения

  • С версии: 4.6.0 — функция была введена.

Код функции

function wp_get_ext_types() {
    /**
     * Фильтрует тип файла на основе имени расширения.
     *
     * @since 2.5.0
     *
     * @see wp_ext2type()
     *
     * @param array[] $ext2type Многомерный массив типов файлов, сгруппированных по расширениям.
     */
    return apply_filters(
        'ext2type',
        array(
            'image'       => array( 'jpg', 'jpeg', 'jpe', 'gif', 'png', 'bmp', 'tif', 'tiff', 'ico', 'heic', 'heif', 'webp', 'avif' ),
            'audio'       => array( 'aac', 'ac3', 'aif', 'aiff', 'flac', 'm3a', 'm4a', 'm4b', 'mka', 'mp1', 'mp2', 'mp3', 'ogg', 'oga', 'ram', 'wav', 'wma' ),
            'video'       => array( '3g2', '3gp', '3gpp', 'asf', 'avi', 'divx', 'dv', 'flv', 'm4v', 'mkv', 'mov', 'mp4', 'mpeg', 'mpg', 'mpv', 'ogm', 'ogv', 'qt', 'rm', 'vob', 'wmv' ),
            'document'    => array( 'doc', 'docx', 'docm', 'dotm', 'odt', 'pages', 'pdf', 'xps', 'oxps', 'rtf', 'wp', 'wpd', 'psd', 'xcf' ),
            'spreadsheet' => array( 'numbers', 'ods', 'xls', 'xlsx', 'xlsm', 'xlsb' ),
            'interactive' => array( 'swf', 'key', 'ppt', 'pptx', 'pptm', 'pps', 'ppsx', 'ppsm', 'sldx', 'sldm', 'odp' ),
            'text'        => array( 'asc', 'csv', 'tsv', 'txt' ),
            'archive'     => array( 'bz2', 'cab', 'dmg', 'gz', 'rar', 'sea', 'sit', 'sqx', 'tar', 'tgz', 'zip', '7z' ),
            'code'        => array( 'css', 'htm', 'html', 'php', 'js' ),
        )
    );
}

Связанные функции

  • Для работы с файловыми расширениями можно использовать следующие функции:
    • wp_get_audio_extensions()
    • wp_get_video_extensions()

Эти примеры и объяснения помогут вам легче понять, как использовать функцию wp_get_ext_types() и какие типы файлов она поддерживает.

Leave a Reply

Ваш адрес email не будет опубликован. Обязательные поля помечены *