Другие языки программирования и технологии

Разве ПХП определяет тип файла только по расширению? Других вариантов у него нет?

есть. . модуль fileinfo
http://php.net/manual/en/book.fileinfo.php

ps: если у вас заливаются файлы только определенных типов, то проверяйте структуру заголовков файла самостоятельно.
для картинок можно использовать стандартные функции получения информации о параметрах файла
Астровская
Астровская
83 288
Лучший ответ
По волшебным первым 4 байтам можно определить) )
Но также придется проверить, является ли файл валидным файлом данного типа, а это нетривиально))
Если ты имел ввиду "PHP обрабатывает как PHP скрипты только файлы с расширением .php?" - это настраивается на стороне сервера. Например,
AddType application/x-httpd-php phtml php html htm css js
в файле httpd.conf сервера Apache ассоциирует с PHP *.phtml, *.php, *.html, *.htm, *.css, *.js

Если речь о чём-то другом, то вопрос неполный ("определяет" для чего и в каком месте программы? )
1. Никому, коме пользователя, нет дела до расширения файла.. .
2. Разве что только до его MIME-типа (пример выше - application/x-httpd-php)
3. Чтобы найти все файлы, например, *.mp3, есть функция glob
4. При загрузке файла на сервер расширение вообще ничего не значит - его можно поменять на стороне пользователя. Да и тут много других особенностей, связанных с безопасностью (особенно если пользователь загрузит что-то, что обрабатывается как PHP скрипт, а потом его откроет) .

А если вобщем, то есть только тип содержимого, а он определяется только по структуре этого самого содержимого :-) см. ответ Лайта Ягами
Юрий Назаров
Юрий Назаров
37 544
Антон Новицкий Я имел в виду совсем другое, протупил и забыл уточнить. Я о загружаемых на сервер файлах...