定义(in_index)的用法


Usage of defined(in_index)

>我在我的一个文件中发现了这行代码,它有这一行来限制用户访问该文件,有人可以解释这行代码,因为我需要限制对我的系统文件的访问

if(!defined('IN_INDEX')) { die('Sorry, you cannot access this file.'); }

这是阻止直接访问 PHP 文件的常见技巧。例如,使用此文件结构:

|- index.php
|- db.php

假设db.php包含数据库连接信息和初始化,您不希望用户直接访问此文件(即使他无法读取源代码)。只能通过从另一个脚本中包含db.php来使用它。

所以,在db.php,你写下了这样一行:

if(!defined('IN_INDEX')) { die('Sorry, you cannot access this file.'); }

并且,在index.php中,在包含db.php之前,您定义IN_INDEX,如下所示:

define('IN_INDEX', true);
include 'db.php';

然后db.php将被执行。

这只是检查以前是否定义了IN_INDEX。它将被定义为脚本另一部分中身份验证函数的一部分。