2016-02-26 11 views
7

Ich richte eine Menge von PHP-Dokumenten ein, die enthalten sind. .cfg für Konfigurationsdateien, .tpl für Vorlagenstrukturdateien, .dlf für Dokumentlayoutdateien, dbh für Datenbankverbindungen und so weiter.benötigen .php-Dateien die Erweiterung .php?

Jetzt heißen sie .tpl.php, .dlf.php usw. Aber müssen sie auch die Erweiterung .php haben? Wenn nicht, gibt es irgendwelche Erweiterungen, die ich nicht verwenden sollte? wie .exe für die Ausführung von Dateien ..

+2

Wie laufen Sie die Dateien? Wird auf Serverebene zugegriffen oder verwenden Sie einfach 'include()' oder 'require()', um auf ihre Daten zuzugreifen? – Ben

+1

Nein, es ist nur eine Konvention. Es sollte jedoch mit der Konfiguration anderer Systemkomponenten übereinstimmen. Sie können eine beliebige Erweiterung oder keine Erweiterung auswählen. Denken Sie daran, http://blog.codinghorror.com/coding-for-violent-psychopaths/ –

+0

Wenn sie durch 'include' oder' require' verwendet werden, funktioniert jede Erweiterung. – mitkosoft

Antwort

3

können Sie Serverkonfiguration ändern andere Dateiendungen wie PHP

In Apache enterpret Sie diese hinzufügen:

<FilesMatch \.php$> 
SetHandler application/x-httpd-php 
</FilesMatch> 

wenn Sie include die Dateien, dann jede Erweiterung tun:

in script.php:

include 'includes/foo.inc'; 
include 'inlcudes/bar.whatever'; 

werden alle arbeiten

3

Von Hiding PHP on PHP.net:

Eine andere Taktik ist Webserver wie Apache zu konfigurieren, verschiedene Dateitypen durch PHP, entweder mit einer .htaccess Richtlinie oder in der Apache-Konfigurationsdatei selbst zu analysieren. Anschließend können Sie irreführende Dateierweiterungen verwenden:

# Make PHP code look like unknown types 
AddType application/x-httpd-php .bop .foo .133t 

So können Sie eine .htaccess Regel hinzufügen, dass Ihr Server behandelt würde bedeuten, .tpl, .dlf etc, als ob sie PHP-Dateien, etwa so:

AddType application/x-httpd-php .tpl .dlf .dbh 

wenn Sie jedoch nur include oderverwenden, es spielt keine Rolle, welche Erweiterung Sie verwenden:

include "inc/template.tpl"; 
require "inc/database.dbh"; 
require_once("inc/config.ext.php.url.tpl.cfg"); 
+0

Was ist, wenn die enthaltenen Dateien aus PHP und HTML-Code bestehen? Würde es immer noch so funktionieren wie bei der Erweiterung, und könnte ich auf einige Probleme stoßen? Der Server ist Linux ... – ThomasK

+1

Es sollte absolut in Ordnung sein - genau so, als ob Sie eine '' PHP'-Datei 'include'-enthalten würden. – Ben