ThinkPHP3.2完全开发手册

ThinkPHP系列开发手册在线版

入口绑定

入口绑定是指在应用的入口文件中绑定某个模块,甚至还可以绑定某个控制器和操作,用来简化URL地址的访问。

绑定模块

例如,我们定义了一个入口文件admin.php,希望可以直接访问Admin模块,那么我们就可以在admin.php中进行模块绑定,定义如下:

// 绑定访问Admin模块
define('BIND_MODULE','Admin');
// 定义应用目录
define('APP_PATH','./Application/');
require './ThinkPHP/ThinkPHP.php';

在3.2.0版本中常量定义需要改成:

$_GET['m'] = 'Admin';

在入口文件中绑定模块后,访问的URL地址中就不需要传入模块名称了。
假设我们要访问Admin模块的Index控制器的test操作方法,访问地址如下: http://serverName/admin.php/Index/test/var/name 如果访问 http://serverName/admin.php/Admin/Index/test/var/name 就会出现下面的错误提示:

QQ图片20140207194948

绑定控制器

和绑定模块一样,我们还可以绑定控制器(一般是和模块绑定结合使用)。 例如:

// 绑定访问Admin模块
define('BIND_MODULE','Admin');
// 绑定访问Index控制器
define('BIND_CONTROLLER','Index');
// 定义应用目录
define('APP_PATH','./Application/');
require './ThinkPHP/ThinkPHP.php';

我们前面的URL访问就可以换成: http://serverName/admin.php/test/var/name

在3.2.0版本中常量定义需要改成:

$_GET['m'] = 'Admin';
$_GET['c'] = 'Index';

绑定操作

原则上,我们还可以在入口文件中绑定操作(虽然这种情况实际使用中不多见)。

// 绑定访问Admin模块
define('BIND_MODULE','Admin');
// 绑定访问Index控制器
define('BIND_CONTROLLER','Index');
// 绑定访问test操作
define('BIND_ACTION','test');
// 定义应用目录
define('APP_PATH','./Application/');
require './ThinkPHP/ThinkPHP.php';

我们前面的URL访问就可以换成: http://serverName/admin.php/var/name

3.2.0版本不支持操作绑定。