熟悉thinkphp3.2.3开发的同学们,都已经习惯了index.php文件直接放在项目路径中,而thinkphp5是放在了public
文件夹中;而index.php文件并没有要求必须放在哪里,所以我们可以把index.php文件放在项目跟目录中,所要变动
的是index.php文件中引用文件的位置:如下
<?php
// 定义应用目录
define('APP_PATH', __DIR__ . '/apps/');
// 加载框架引导文件
require __DIR__ . './thinkphp/start.php';
这里心细的同学会发现,我的应用目录名称改变了/apps/,刚接触thinkphp5开发的同学会发现tp3.2直接就可以自动
生成文件夹,而tp5会报错;这里我告诉大家一个方法,首先在根目录中建立一个文件夹与你的应用目录名称要相同
例如我在更目录中建立的,文件夹名称为apps的文件夹,不要以为这样就可以了,我们还需把index.php文件修改一下
如下:
<?php
// 定义应用目录
define('APP_PATH', __DIR__ . '/apps/');
// 加载框架引导文件
require __DIR__ . './thinkphp/base.php'; //这里需要修改
$build = include './build.php';
\think\Build::run($build);
心细的同学会发现,下面又多了两行代码,这里我们就要使用build.php文件了,内容如下:
<?php
return [
// 生成应用公共文件
'__file__' => ['common.php', 'config.php', 'database.php', 'route.php', 'tags.php'],
// 定义demo模块的自动生成 (按照实际定义的文件名生成)
'index' => [
'__file__' => ['common.php'],
'__dir__' => ['behavior', 'controller', 'view'],
'controller' => ['Index', 'Common'],
'view' => ['index/index'],
],
'admin' => [
'__file__' => ['common.php'],
'__dir__' => ['controller', 'model', 'view'],
'controller' => ['Index', 'Common'],
'model' => ['Admin'],
'view' => ['index/index'],
],
// 其他更多的模块定义
];
这回你在运行一下试一试,看看是否可以了,并且文件都已经建立好了
特别值得说一下,我把index.php文件放在了根目录中,如果不想修改index.php文件,要注意引用文件的位置
建立好项目所需文件之后,我们要把index.php文件修改回来如下
<?php
// 定义应用目录
define('APP_PATH', __DIR__ . '/apps/');
// 加载框架引导文件
require __DIR__ . './thinkphp/start.php';
如果要添加模块,在index.php文件中使用
\think\Build::module('other'); //建好之后,再把这个绑定模块语句注释或删除diao,要下班了,今天就到这里
明天周末,如果没事我将继续更新,希望对大家有用