Często widzę przykłady w PHP zawierające pliki.inc. Jakie jest znaczenie .inc? Do czego służy? Jakie są wady i zalety korzystania z niej?
139
To nie ma znaczenia, jest to tylko rozszerzenie pliku. Niektórzy ludzie nazywają pliki z rozszerzeniem .inc, jeśli ten plik jest przeznaczony do dołączenia do innych plików PHP, ale jest to tylko konwencja.
Ma to możliwą wadę polegającą na tym, że serwery normalnie nie są skonfigurowane do analizowania plików .inc jako php, więc jeśli plik znajduje się w katalogu głównym, a serwer jest skonfigurowany w domyślny sposób, użytkownik może wyświetlić kod źródłowy php w plik .inc, odwiedzając bezpośrednio adres URL.
Jedyną możliwą zaletą jest to, że łatwo jest zidentyfikować, które pliki są używane jako dołączone. Chociaż zwykłe nadanie im rozszerzenia .php i umieszczenie ich w folderze zawiera, ma ten sam efekt bez wspomnianej powyżej wady.
require
lubinclude
i będzie traktowany jako zwykły tekst przez resztę czasu. Traktowanie go jako tekstu na serwerze nie zaszkodzi, boli tylko wtedy, gdy kod zostanie udostępniony jako tekst użytkownikowi końcowemu)..php
i.inc
. PHP obejmuje również pracę z innymi typami plików. Dołączenie „.html”, „.js”, „.css”, „.txt” lub dowolnych niestandardowych rozszerzeń plików spowoduje, że parsowanie PHP odczyta z niego kod PHP. Przydatne, gdy chcesz utworzyć bazę danych opartą na plikach i chcesz sprawdzić, czy jest to plik bazy danych. jak.data
. Następnie możesz użyć komentarza @ ClearCrescendo powyżej, aby go zabezpieczyć.Jeśli martwisz się zawartością pliku, a nie jego wyjściem. Można użyć podwójnego rozszerzenia jak:
file.inc.php
. Następnie służy temu samemu celowi przydatności i łatwości konserwacji.Zwykle mam 2 pliki php dla każdej strony w mojej witrynie:
welcome.php
w folderze głównym, zawierający wszystkie znaczniki HTML.welcome.inc.php
winc
folderze, zawierający wszystkie funkcje PHP specyficzne dlawelcome.php
strony.EDYCJA: Kolejną zaletą korzystania z podwójnego rozszerzenia
.inc.php
byłoby to, że każde IDE może nadal rozpoznawać plik jako kod PHP.źródło
Ogólnie oznacza, że jest to plik, który musi zostać dołączony i sam w sobie nie tworzy samodzielnego skryptu.
To jest konwencja, a nie technika programowania.
Chociaż jeśli twój serwer WWW nie jest poprawnie skonfigurowany, może ujawnić pliki z rozszerzeniami takimi jak .inc.
źródło
Jest to tylko sposób, aby deweloper mógł łatwo zidentyfikować pliki, które mają być używane jako dołączone. To popularna konwencja. Nie ma to żadnego specjalnego znaczenia dla PHP i nie zmieni zachowania PHP ani samego skryptu.
źródło
Jest to konwencja, której programista zwykle używa do identyfikacji różnych nazw plików dołączanych. Więc jeśli inni programiści pracują nad swoim kodem, mogą łatwo zidentyfikować, dlaczego ten plik istnieje i jaki jest cel tego pliku, po prostu widząc nazwę pliku.
źródło
Wystarczy dodać. Inną wadą byłoby to, że pliki .inc nie są rozpoznawane przez środowisko IDE, więc nie można byłoby skorzystać z funkcji autouzupełniania lub przewidywania kodu.
źródło
Moim zdaniem były one używane jako sposób na szybkie znajdowanie plików dołączanych podczas programowania. Naprawdę stały się one przestarzałe dzięki konwencjom i projektom ram.
źródło
Zauważ, że możesz skonfigurować Apache tak, aby wszystkie pliki z rozszerzeniem
.inc
aby zabrania się pobierania rozszerzeniem, odwiedzając bezpośrednio adres URL.patrz link: /server/22577/how-to-deny-the-web-access-to-some-files
źródło