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