2016-02-26 17 views
7

Tôi đang thiết lập một coulple tài liệu php được bao gồm. .cfg cho tệp cấu hình, .tpl cho tệp cấu trúc mẫu, .dlf cho tệp bố cục tài liệu, dbh cho kết nối cơ sở dữ liệu, v.v.có tệp .php cần phần mở rộng .php không?

Bây giờ, chúng được gọi là .tpl.php, .dlf.php vv Nhưng chúng có cần phải có phần mở rộng .php không? Nếu không, có bất kỳ phần mở rộng nào mà tôi không nên sử dụng không? như .exe cho các tập tin thực thi ..

+2

Bạn đang chạy tệp như thế nào? Có phải chúng đang được truy cập ở cấp độ máy chủ hay bạn chỉ sử dụng 'include()' hoặc 'require()' để truy cập dữ liệu của chúng? – Ben

+1

Không, nó chỉ là một quy ước. Nó nên đồng ý với cấu hình của các thành phần hệ thống khác mặc dù. Bạn được tự do chọn bất kỳ tiện ích mở rộng nào hoặc không có tiện ích mở rộng nào cả. Hãy nhớ http://blog.codinghorror.com/coding-for-violent-psychopaths/ –

+0

Nếu chúng được sử dụng máng 'include' hoặc' require', mọi tiện ích sẽ hoạt động. – mitkosoft

Trả lời

3

Bạn có thể thay đổi cấu hình máy chủ để enterpret phần mở rộng tập tin khác như PHP

Trong Apache bạn có thể thêm vào này:

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

nếu bạn include các tập tin, sau đó bất kỳ phần mở rộng sẽ làm:

trong script.php:

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

tất cả sẽ làm việc

3

Từ Hiding PHP on PHP.net:

chiến thuật khác là cấu hình máy chủ web như apache để phân tích các loại file khác nhau thông qua PHP, hoặc với một chỉ thị .htaccess, hoặc trong tập tin cấu hình apache chính nó. Sau đó bạn có thể sử dụng phần mở rộng tập tin sai lệch:

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

Vì vậy, bạn có thể thêm một quy tắc .htaccess đó sẽ có nghĩa là xử lý máy chủ của bạn .tpl, .dlf vv như thể chúng là PHP file, như vậy:

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

Tuy nhiên, nếu bạn chỉ sử dụng include hoặc require, việc bạn sử dụng tiện ích mở rộng nào không quan trọng:

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

nếu các tệp được bao gồm bao gồm cả mã php và html thì sao? Nó sẽ vẫn làm việc như với phần mở rộng, og tôi có thể chạy vào một số vấn đề trên đường đi? Máy chủ là Linux ... – ThomasK

+1

Nó sẽ hoàn toàn ổn - giống như khi bạn đang 'include'-ing một tệp' .PHP' thông thường. – Ben

Các vấn đề liên quan