./public也就是说,你的网站主目录是public目录,github中的其他两个目录随意你放到任何位置,但是前提是,根据文件引用规则,确实能够相互引用。├─public WEB目录(对外访问目录)
│ ├─index.php 入口文件
│ ├─.htaccess 用于apache的重写
│ └─router.php 快速测试文件(用于PHP内置webserver)这也就意味着,在tp5.0的版本中,你的网站主目录里将不会出现框架目录和项目目录(这样说可能略显复杂了,也就是说:把所有不用直接访问的文件都移到网站目录外面了,这样为了安全。)。<?php
return [
// 生成运行时目录
'__dir__' => ['runtime/cache', 'runtime/log', 'runtime/temp'],
'__file__' => ['tags.php'],
//其实,如果上面的改成:'__file__' => ['tags.php','config.php'], 那么config.php 也会自动创建
// 定义shop模块的自动生成
'shop' => [
'__file__' => ['tags.php'],
'__dir__' => ['behavior', 'controller', 'model', 'view'],
'controller' => ['Index', 'Test', 'UserType'],
'model' => [],
'view' => ['index/index'],
],
// 定义cms模块的自动生成
'cms' => [
'__file__' => ['tags.php'],
'__dir__' => ['behavior', 'controller', 'model', 'view'],
'controller' => ['Index', 'Test', 'UserType'],
'model' => [],
'view' => ['index/index'],
],
// 定义mobile模块的自动生成
'mobile' => [
'__file__' => ['tags.php'],
'__dir__' => ['behavior', 'controller', 'model', 'view'],
'controller' => ['Index', 'Test', 'UserType'],
'model' => [],
'view' => ['index/index'],
],
// 定义weixin模块的自动生成
'weixin' => [
'__file__' => ['tags.php'],
'__dir__' => ['behavior', 'controller', 'model', 'view'],
'controller' => ['Index', 'Test', 'UserType'],
'model' => [],
'view' => ['index/index'],
],
// 。。。 其他更多的模块定义
];当然,你还要在'index.php'中添加一行代码://你最好在完成自动生成后,把他删除了。
define('APP_AUTO_BUILD',true);接着,访问你的域名(或者本地地址),按照上面问题中所属的模块,你会得到一个错误页面:<?
return [
// 默认模块名
'default_module' => 'shop',
// 禁止访问模块
'deny_module_list' => [COMMON_MODULE, 'runtime'],
// 默认控制器名
'default_controller' => 'Index',
// 默认操作名
'default_action' => 'index',
// 默认的空控制器名
'empty_controller' => 'Error',
// 操作方法后缀
'action_suffix' => '',
// 操作绑定到类
'action_bind_class' => false,
];哦,好吧,从这里你会看出,这里是直接复制的’think/thinkphp/convention.php‘中的代码,是的,我想告诉你的就是,如果你遇到问题,直接看tp的源代码,将会获得意想不到的帮助。ThinkPHP 是一个免费开源的,快速、简单的面向对象的 轻量级PHP开发框架 ,创立于2006年初,遵循Apache2开源协议发布,是为了敏捷WEB应用开发和简化企业应用开发而诞生的。ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性。并且拥有众多的原创功能和特性,在社区团队的积极参与下,在易用性、扩展性和性能方面不断优化和改进,已经成长为国内最领先和最具影响力的WEB应用开发框架,众多的典型案例确保可以稳定用于商业以及门户级的开发。