: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in
'mime_type' => 'application/octet-stream',
// DSDIFF - audio - Direct Stream Digital Interchange File Format
'mime_type' => 'audio/dsd',
// DTS - audio - Dolby Theatre System
'pattern' => '^\\x7F\\xFE\\x80\\x01',
'mime_type' => 'audio/dts',
// FLAC - audio - Free Lossless Audio Codec
'mime_type' => 'audio/flac',
// LA - audio - Lossless Audio (LA)
'pattern' => '^LA0[2-4]',
'mime_type' => 'application/octet-stream',
// LPAC - audio - Lossless Predictive Audio Compression (LPAC)
'mime_type' => 'application/octet-stream',
// MIDI - audio - MIDI (Musical Instrument Digital Interface)
'mime_type' => 'audio/midi',
// MAC - audio - Monkey's Audio Compressor
'mime_type' => 'audio/x-monkeys-audio',
// MOD - audio - MODule (SoundTracker)
//'pattern' => '^.{1080}(M\\.K\\.|M!K!|FLT4|FLT8|[5-9]CHN|[1-3][0-9]CH)', // has been known to produce false matches in random files (e.g. JPEGs), leave out until more precise matching available
'pattern' => '^.{1080}(M\\.K\\.)',
'mime_type' => 'audio/mod',
// MOD - audio - MODule (Impulse Tracker)
'mime_type' => 'audio/it',
// MOD - audio - MODule (eXtended Module, various sub-formats)
'pattern' => '^Extended Module',
'mime_type' => 'audio/xm',
// MOD - audio - MODule (ScreamTracker)
'pattern' => '^.{44}SCRM',
'mime_type' => 'audio/s3m',
// MPC - audio - Musepack / MPEGplus
'pattern' => '^(MPCK|MP\\+)',
'mime_type' => 'audio/x-musepack',
// MP3 - audio - MPEG-audio Layer 3 (very similar to AAC-ADTS)
'pattern' => '^\\xFF[\\xE2-\\xE7\\xF2-\\xF7\\xFA-\\xFF][\\x00-\\x0B\\x10-\\x1B\\x20-\\x2B\\x30-\\x3B\\x40-\\x4B\\x50-\\x5B\\x60-\\x6B\\x70-\\x7B\\x80-\\x8B\\x90-\\x9B\\xA0-\\xAB\\xB0-\\xBB\\xC0-\\xCB\\xD0-\\xDB\\xE0-\\xEB\\xF0-\\xFB]',
'mime_type' => 'audio/mpeg',
// OFR - audio - OptimFROG
'pattern' => '^(\\*RIFF|OFR)',
'mime_type' => 'application/octet-stream',
// RKAU - audio - RKive AUdio compressor
'mime_type' => 'application/octet-stream',
'mime_type' => 'audio/xmms-shn',
// TAK - audio - Tom's lossless Audio Kompressor
'mime_type' => 'application/octet-stream',
// TTA - audio - TTA Lossless Audio Compressor (http://tta.corecodec.org)
'pattern' => '^TTA', // could also be '^TTA(\\x01|\\x02|\\x03|2|1)'
'mime_type' => 'application/octet-stream',
// VOC - audio - Creative Voice (VOC)
'pattern' => '^Creative Voice File',
'mime_type' => 'audio/voc',
// VQF - audio - transform-domain weighted interleave Vector Quantization Format (VQF)
'mime_type' => 'application/octet-stream',
// WV - audio - WavPack (v4.0+)
'mime_type' => 'application/octet-stream',
// ASF - audio/video - Advanced Streaming Format, Windows Media Video, Windows Media Audio
'pattern' => '^\\x30\\x26\\xB2\\x75\\x8E\\x66\\xCF\\x11\\xA6\\xD9\\x00\\xAA\\x00\\x62\\xCE\\x6C',
'group' => 'audio-video',
'mime_type' => 'video/x-ms-asf',
// BINK - audio/video - Bink / Smacker
'pattern' => '^(BIK|SMK)',
'group' => 'audio-video',
'mime_type' => 'application/octet-stream',
// FLV - audio/video - FLash Video
'pattern' => '^FLV[\\x01]',
'group' => 'audio-video',
'mime_type' => 'video/x-flv',
// IVF - audio/video - IVF
'group' => 'audio-video',
'mime_type' => 'video/x-ivf',
// MKAV - audio/video - Mastroka
'pattern' => '^\\x1A\\x45\\xDF\\xA3',
'group' => 'audio-video',
'mime_type' => 'video/x-matroska', // may also be audio/x-matroska
// MPEG - audio/video - MPEG (Moving Pictures Experts Group)
'pattern' => '^\\x00\\x00\\x01[\\xB3\\xBA]',
'group' => 'audio-video',
'mime_type' => 'video/mpeg',
// NSV - audio/video - Nullsoft Streaming Video (NSV)
'group' => 'audio-video',
'mime_type' => 'application/octet-stream',
// Ogg - audio/video - Ogg (Ogg-Vorbis, Ogg-FLAC, Speex, Ogg-Theora(*), Ogg-Tarkin(*))
'mime_type' => 'application/ogg',
// QT - audio/video - Quicktime
'pattern' => '^.{4}(cmov|free|ftyp|mdat|moov|pnot|skip|wide)',
'group' => 'audio-video',
'mime_type' => 'video/quicktime',
// RIFF - audio/video - Resource Interchange File Format (RIFF) / WAV / AVI / CD-audio / SDSS = renamed variant used by SmartSound QuickTracks (www.smartsound.com) / FORM = Audio Interchange File Format (AIFF)
'pattern' => '^(RIFF|SDSS|FORM)',
'group' => 'audio-video',
'mime_type' => 'audio/wav',
// Real - audio/video - RealAudio, RealVideo
'pattern' => '^\\.(RMF|ra)',
'group' => 'audio-video',
'mime_type' => 'audio/x-realaudio',
// SWF - audio/video - ShockWave Flash
'group' => 'audio-video',
'mime_type' => 'application/x-shockwave-flash',
// TS - audio/video - MPEG-2 Transport Stream
'pattern' => '^(\\x47.{187}){10,}', // packets are 188 bytes long and start with 0x47 "G". Check for at least 10 packets matching this pattern
'group' => 'audio-video',
'mime_type' => 'video/MP2T',
// WTV - audio/video - Windows Recorded TV Show
'pattern' => '^\\xB7\\xD8\\x00\\x20\\x37\\x49\\xDA\\x11\\xA6\\x4E\\x00\\x07\\xE9\\x5E\\xAD\\x8D',
'group' => 'audio-video',
'mime_type' => 'video/x-ms-wtv',
// BMP - still image - Bitmap (Windows, OS/2; uncompressed, RLE8, RLE4)
'mime_type' => 'image/bmp',
// GIF - still image - Graphics Interchange Format
'mime_type' => 'image/gif',
// JPEG - still image - Joint Photographic Experts Group (JPEG)
'pattern' => '^\\xFF\\xD8\\xFF',
'mime_type' => 'image/jpeg',
// PCD - still image - Kodak Photo CD
'pattern' => '^.{2048}PCD_IPI\\x00',
'mime_type' => 'image/x-photo-cd',
// PNG - still image - Portable Network Graphics (PNG)
'pattern' => '^\\x89\\x50\\x4E\\x47\\x0D\\x0A\\x1A\\x0A',
'mime_type' => 'image/png',
// SVG - still image - Scalable Vector Graphics (SVG)
'pattern' => '(<!DOCTYPE svg PUBLIC |xmlns="http://www\\.w3\\.org/2000/svg")',
'mime_type' => 'image/svg+xml',
// TIFF - still image - Tagged Information File Format (TIFF)
'pattern' => '^(II\\x2A\\x00|MM\\x00\\x2A)',
'mime_type' => 'image/tiff',
// EFAX - still image - eFax (TIFF derivative)
'pattern' => '^\\xDC\\xFE',
'mime_type' => 'image/efax',
// ISO - data - International Standards Organization (ISO) CD-ROM Image
'pattern' => '^.{32769}CD001',
'mime_type' => 'application/octet-stream',
// HPK - data - HPK compressed data
'mime_type' => 'application/octet-stream',
// RAR - data - RAR compressed data
'mime_type' => 'application/vnd.rar',
// SZIP - audio/data - SZIP compressed data
'pattern' => '^SZ\\x0A\\x04',
'mime_type' => 'application/octet-stream',
// TAR - data - TAR compressed data
'pattern' => '^.{100}[0-9\\x20]{7}\\x00[0-9\\x20]{7}\\x00[0-9\\x20]{7}\\x00[0-9\\x20\\x00]{12}[0-9\\x20\\x00]{12}',
'mime_type' => 'application/x-tar',
// GZIP - data - GZIP compressed data
'pattern' => '^\\x1F\\x8B\\x08',
'mime_type' => 'application/gzip',
// ZIP - data - ZIP compressed data
'pattern' => '^PK\\x03\\x04',
'mime_type' => 'application/zip',
// XZ - data - XZ compressed data
'pattern' => '^\\xFD7zXZ\\x00',
'mime_type' => 'application/x-xz',
// XZ - data - XZ compressed data
'pattern' => '^7z\\xBC\\xAF\\x27\\x1C',
'mime_type' => 'application/x-7z-compressed',
// PAR2 - data - Parity Volume Set Specification 2.0
'pattern' => '^PAR2\\x00PKT',
'mime_type' => 'application/octet-stream',
// PDF - data - Portable Document Format
'pattern' => '^\\x25PDF',
'mime_type' => 'application/pdf',