我网站的主文件(index.php)代码在这里:
<?php
include 'header.php';
include 'sidebar.php';
include 'content.php';
include 'footer.php';
?>
但我不希望任何用户通过编写“www.domain.com/header.php”来查看这些包含文件。我应该在这些文件中插入php代码还是可以的?
答案 0 :(得分:9)
您有几种选择。
exit
。答案 1 :(得分:7)
这是给你的PHP。
if(basename(__FILE__) == basename($_SERVER['PHP_SELF'])){exit();}
简而言之,如果调用文件本身就会退出执行。
来源:http://thephpcode.blogspot.se/2009/07/creating-include-only-php-files.html
答案 2 :(得分:2)
您可以在主文件中定义一个常量,并在包含的文件中使用它来检测它们是否真的被包含在内:
的index.php
<?php
define('REALLY_INCLUDED', true);
include'header.php';
的header.php
<?php
if(!defined('REALLY_INCLUDED') || !REALLY_INCLUDED) {
exit();
}
...