美文网首页
ThinkPHP5 ---基础篇(安装)

ThinkPHP5 ---基础篇(安装)

作者: donglingjiu | 来源:发表于2018-06-12 10:44 被阅读0次

    ThinkPHP5 ---基础篇(安装)

    一、ThinkPHP简介

    i. ThinkPHP是一个免费开源 快速简单 面向对象 轻量级的PHP开发框架

    ii. 创立于2006年初 遵循Apache2开源协议发布

    iii. 秉承简洁实用的设计原则 注重易用性

    iv. 支持composer(包管理工具)方式安装 类似于node.js里面的npm

    v. 5版本与之前版本不兼容

    二、MVC简介

    i. Model(模型) View(视图) Controller(控制器)的缩写 是一种业务逻辑 数据 显示页面分离的设计典范(设计模式:单例|工厂|观察者...) 业务逻辑封装之后 在改进或者个性化定制界面用户交互的同时 对编写好的业务逻辑不影响

    ii. 优势

    1. 耦合性低 任何一层的改变 对其他层影响不大

    2. 重用性高

    3. 可维护性高

    image.png image.png

    iii. MVC的变形

    1. 无Model模式

    a) 企业官网 静态数据展示 基本上不涉及数据库操作 展示静态页面 Controller主要是路由跳转 View主要展示页面

    1. 无View的API接口开发

    a) 给app写接口的时候 不需要展示界面 所有数据都通过json|xml返回

    三、ThinkPHP5的安装

    i. Git方式安装

    1. https://github.com/top-think
    1. 需要clone两个包
    image.png

    a) 进入think 选择open in Desktop(选择clone或者open in Desktop 本地都需要安装git环境 最简单的下载git桌面版 详情参考版本工具GIT篇) 如果是用命令行 可以加上git clone --depth=1 ... 只克隆最新一次commit

    image.png

    b) 选择本地项目目录

    image.png image.png

    c) 然后clone framework 核心包

    image.png

    d) 在上一步的目录下新建thinkphp目录 clone

    image.png image.png

    浏览器访问 进入到public目录 出现下面界面说明安装成功

    image.png

    同理 选择DownloadZip 然后解压缩 也可以 分别下载两个包 然后将framework包重命名thinkphp 移动到think目录下即可

    ii. Composer方式安装

    1. 本地先安装composer环境

    a) 进入官网 <u>https://www.phpcomposer.com/</u> ->下载

    image.png image.png

    b) 双击 安装 (过程中需要绑定php.exe)


    image.png

    c) windows+R cmd 打开命令行 composer验证是否安装成功


    image.png

    d) 通过composer安装ThinkPHP

    i. 命令行进入项目目录

    image.png

    ii. Composer create-project --prefer-dist topthink/think think_composer进入到项目目录 命令行安装

    composer create-project --prefer-dist topthink/think=5.0.20 think_composer 可以指定下载版本


    image.png image.png image.png image.png

    安装过程中 需要联网...... 网速不稳定的话 可能会导致安装不成功

    也可以在composer官网 安装包列表 选择下载tp版本 上面的命令也可以指定版本

    iii. localhost测试

    image.png image.png

    iii. Download官网安装

    1. 进入http://www.thinkphp.cn/ 官网
      image.png
    1. 需要先登录 然后选择版本下载

    四、设置网站根目录为 public目录 (选)

    i. Apache配置文件 httpd-vhosts.conf

    ii. 此文件下可以配置虚拟主机 如a.com 便于本地测试

    1. 需要在httpd.conf文件中打开扩展

    2. 需要在System32/drivers/etc/hosts文件中配置 127.0.0.1 a.com 配置

    3. 重启服务器生效

    image.png

    五、ThinkPHP5的目录结构

    i. Application 应用目录

    image.png

    ii. Extend 扩展类库目录

    1. 下载第三方库的时候使用的 不是通过composer下载的

    a) 如 有一个好用的第三方库 但是没有composer包 这种情况下可以将类库下载到extend目录 之后修改命名空间 就直接可以在应用中使用了

    iii. Public根目录


    image.png

    iv. Runtime 网站运行中的缓存文件 日志缓存 编译文件等等

    v. Thinkphp框架系统目录

    image.png

    vi. Vendor 通过composer安装 过程中生成的目录

    1. 里面有thinkphp主程序文件 各种类库文件

    六、 目录和文件开发规范

    i. 目录使用小写+下划线的方式命名(不允许大写)

    ii. 类库函数文件名 均以.php结尾 (5版本以前是.class.php 5版本之后.php)

    iii. 类的文件名均以命名空间定义 且命名空间和类库文件所在路径一致

    1. 如 application/index/controller/Index.php

    namespace app\index\controller (app定义顶级应用模块目录)

    iv. 类文件采用驼峰 首字母大写 其余文件为小写+下划线命名

    1. 如 控制器 Index.php

    2. 路由文件 route.php 数据库配置文件 database.php

    v. 类名和类文件名保持一致 驼峰命名 首字母大写 不需要后缀

    1. 如 Index.php (5版本前是 IndexController.php 5版本之后是 Index.php)

    vi. 函数驼峰命名 首字母小写

    1. 如 public function getUserName(){}

    vii. 属性名驼峰 首字母小写

    1. 如 public $tableName = ‘’ ;

    viii. 以双下划线(__)开头的函数或者方法为魔术方法

    1. 如 public function __construct(){}

    2. 自定义函数的时候 函数名注意避免

    ix. 常量和配置

    1. 常量以大写字母和下划线命名

    a) 如define(‘APP_PATH’, DIR . ’/../application/’) ;尽量不要下划线开头

    1. 配置参数以小写字母和下划线命名

    a) 如 config.php

    image.png

    x. 其他规范

    1. 表和字段采用小写+下划线的命名方式 不能下划线开头

    a) 如 tb_user 表

    1. 应用类库的命名空间统一为app(可以配置)

    a) 一般情况下不要更改 app为默认顶级应用

    七、ThinkPHP5模块设计

    i. 概要:

    5.0版本对模块的功能做了灵活设计 默认采用多模块的架构 并且支持单一模块设计 所有模块的命名空间均以app作为根命名空间(可配置)

    根据项目需求

    image.png

    FAQ:

    一、启动本地环境 查看端口占用

    1.找到被占端口pid

    netstat -aon|findstr "3306"

    image.png

    2.根据pid 查看进程

    tasklist|findstr "1880"

    image.png

    3.结束进程

    taskkill /f /t /im mysqld.exe

    image.png

    二、自定义common模块报错:

    image.png

    报错信息:

    image.png

    分析:

    这是thinkphp的规定 默认common是公用模块 存放 通用方法 不允许在URL上直接访问

    解决:

    image.png image.png

    将重复性的代码 权限 数据处理放在common模块 简化程序

    三、修改application目录

    i. 将application目录重命名 app

    ii. 修改public/index.php define(‘APP_PATH’, DIR . ‘/../app/’);

    image.png

    相关文章

      网友评论

          本文标题:ThinkPHP5 ---基础篇(安装)

          本文链接:https://www.haomeiwen.com/subject/mcrleftx.html