Я часто вижу примеры на PHP, которые используют .inc файлы для включения. В чем смысл .inc? Для чего он используется? Каковы недостатки и преимущества его использования?
Что такое .inc и зачем его использовать?
Ответ 1
У него нет смысла, это просто расширение файла. Некоторым людям принято обозначать файлы с расширением .inc, если этот файл предназначен для включения в другие файлы PHP, но это только соглашение.
У него есть возможный недостаток, который заключается в том, что серверы обычно не настроены на синтаксический анализ .inc файлов как php, поэтому, если файл находится в корневом каталоге вашего веб-сайта, а ваш сервер настроен по-умолчанию, пользователь может просмотреть ваш php исходный код в файле .inc, непосредственно посетив URL.
Единственное возможное преимущество заключается в том, что легко определить, какие файлы используются как включающие. Хотя просто предоставление им расширения .php и размещение их в папке с добавлением имеет такой же эффект без упомянутого выше недостатка.
Ответ 2
Если вы обеспокоены тем, что содержимое файла обслуживается, а не его вывод. Вы можете использовать двойное расширение, например: file.inc.php
. Затем он служит той же цели, что и полезность и ремонтопригодность.
У меня обычно есть 2 php файла для каждой страницы моего сайта:
- Один из них назван
welcome.php
в корневой папке, содержащий всю разметку HTML. - И еще один
welcome.inc.php
в папкеinc
, содержащий все функции PHP, относящиеся к страницеwelcome.php
.
EDIT: Еще одно преимущество использования двойного расширения .inc.php
заключается в том, что любая IDE все еще может распознавать файл как код PHP.
Ответ 3
Как правило, это файл, который должен быть включен и не делает автономный script сам по себе.
Это соглашение не метод программирования.
Хотя если ваш веб-сервер настроен неправильно, он может выставлять файлы с расширениями, такими как .inc.
Ответ 4
Это просто способ, чтобы разработчик мог легко идентифицировать файлы, предназначенные для использования в качестве включений. Это популярная конвенция. Он не имеет никакого особого значения для PHP и не будет изменять поведение PHP или самого script.
Ответ 5
Это соглашение, которое программист обычно использует для идентификации разных имен файлов для включенных файлов. Чтобы другие разработчики работали над своим кодом, он может легко определить, почему этот файл существует, и что является целью этого файла, просто видя имя файла.
Ответ 6
Просто добавьте. Другим недостатком будет то, что .inc файлы не распознаются IDE, поэтому вы не могли воспользоваться функциями автозаполнения или прогнозирования кода.
Ответ 7
По-моему, они были использованы для быстрого поиска включенных файлов при разработке. Действительно, они были устаревшими с условностями и рамочными проектами.
Ответ 8
Обратите внимание, что
Вы можете настроить Apache так, чтобы все файлы с расширением .inc
запрещались для поиска, непосредственно посещая URL.
см. ссылку: https://serverfault.com/info/22577/how-to-deny-the-web-access-to-some-files