zoukankan      html  css  js  c++  java
  • ThinPHP v5.x安装初始化配置(项目实战)

    本地环境搭建

    本地环境描述:PHPStudy v8.1 

    PHP框架:ThinkPHP v5.1

    phpstudy新建测试域名:www.think51.com

    ThinkPHP v5.1安装(composer安装)

    composer环境

    composer安装:Composer 中文网 / Packagist 中国全量镜像 (phpcomposer.com)

    //修改阿里云镜像
    composer config -g repo.packagist composer https://mirrors.aliyun.com/composer  
    //或者中国全量镜像
    composer config -g repo.packagist composer https://packagist.phpcomposer.com

    安装ThinkPHP

    在phpstudy环境www目录下

    //第一次安装
    composer create-project topthink/think=5.1.* www.think51.com
    //从缓存安装
    composer create-project topthink/think=5.1.* www.think51.com --prefer-dist

    --prefer-dist

    会从github上下载.zip压缩包,并缓存到本地。下次再安装就会从本地加载,大大加速安装速度。但她没有保留.git文件夹,没有版本信息。适合基于这个包进行开发。

    --prefer-source

    会从github上克隆源代码,不会在本地缓存。但它保留了.git文件夹,从而可以实现版本控制。适合用于修改源代码。

     

    批量生成模块

    编辑根目录build.php

    <?php
    // +----------------------------------------------------------------------
    // | ThinkPHP [ WE CAN DO IT JUST THINK ]
    // +----------------------------------------------------------------------
    // | Copyright (c) 2006~2018 http://thinkphp.cn All rights reserved.
    // +----------------------------------------------------------------------
    // | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )
    // +----------------------------------------------------------------------
    // | Author: liu21st <liu21st@gmail.com>
    // +----------------------------------------------------------------------
    
    return [
        // 生成应用公共文件
        '__file__' => ['common.php'],
    
        // 定义demo模块的自动生成 (按照实际定义的文件名生成)
        'admin'     => [
            '__file__'   => ['common.php'],
            '__dir__'    => ['behavior', 'controller', 'model', 'view'],
            'controller' => ['Index', 'Manager','System', 'UserType'],
            'model'      => ['User', 'Manager','UserType'],
            'view'       => ['index/index','index/login','index/welcome'],
        ],
        'index'     => [
            '__file__'   => ['common.php'],
            '__dir__'    => ['behavior', 'controller', 'model', 'view'],
            'controller' => ['Index', 'User','UserInfo', 'UserType'],
            'model'      => ['User', 'User','UserInfo'],
            'view'       => ['index/index','index/login'],
        ],
    
        // 其他更多的模块定义
    ];

    把build.php存放到application目录,执行php think build命令,批量生成模块

    以下提示是没有把build.php放到application目录

    在网站根目录执行php think build命令批量生成模块

    >php think build

    隐藏入口文件

    入口文件,在网站public目录下新建.htaccess 文件
    //此配置文件针对phpstudy环境,默认linux环境倒数第二行为index.php后面没有?,此配置针对phpstudy环境,其他的配置可以自行搜索。
    <IfModule mod_rewrite.c>
     Options +FollowSymlinks -Multiviews
     RewriteEngine On
     RewriteCond %{REQUEST_FILENAME} !-d
     RewriteCond %{REQUEST_FILENAME} !-f
     RewriteRule ^(.*)$ index.php?/$1 [QSA,PT,L]
    </IfModule>

    通过phpstudy,把www.think51.com的根目录修改为www.think51.com/public

    隐藏文件后,可以用phpstudy打开www.think51.com/index域名可以实现正常访问网站前台index模块。www.think51.com/admin则访问到网站后台admin模块

    前台默认会访问www.think51.com/index模块/index控制器/index方法,通过www.think51.com/config.php/app.php里设置

    后台输入admin访问www.think51.com/admin模块/index控制器/index方法,

    在app.php默认设置里可以自行更改:

    // 默认模块名
        'default_module'         => 'index',
        // 禁止访问模块
        'deny_module_list'       => ['common'],
        // 默认控制器名
        'default_controller'     => 'Index',
        // 默认操作名
        'default_action'         => 'index',

    例如当前正在设置后台模块,可以把默认绑定模块名修改为admin,输入www.think51.com默认就访问admin模块了。

    开启调试模式

    config/app.php

    // 应用调试模式
    'app_debug'              => true,
    // 应用Trace,TP自带调试模块
    'app_trace'              => true,    

    命令行创建模块/控制器/模型

    创建模块

    php think build --module 模块名
    php think build --module admin即可。(模块名小写)

    创建控制器

    //php think make:controller 模块名/控制器名
    php think make:controller admin/Goods 
    php think make:controller admin/Login --plain
    //加上 --plain 参数 表示创建没有方法的空控制器类。否则控制器类中会自带一些方法。

    创建模型

    php think make:model 模块名/模型名
    php think make:model admin/User

    开启ThinkPHP模板继承

    设置完成后,导入前端模板进入进一步项目实战。

     其中控制器采用驼峰命名UserInfo.php的时候,视图需要创建user_info文件夹。

    或者app/config/app.php中修改url_convert设置为false

    控制器注意事项

    模板输出替换

    如果需要全局替换的话,可以直接在template.php配置文件中添加:

    用来全局配置模板文件输出的字符串替换。本次assets为后台需要的css、js等目录包

    'tpl_replace_string'  =>  [
        '__ADMIN__'=>'/assets',
        '__STATIC__'=>'/static',
    ]

     最后推荐一个国外前端开源UI框架

    PHPStudy WWW执行以下代码:

    git clone git@github.com:bopoda/ace.git acemaster
  • 相关阅读:
    DBA常用脚本 二、性能监控
    ORA01012:not logged on的解决办法
    线性布局LinearLayout
    Android Handler.postDelayed()方法
    java String.valueOf()
    布局管理器ViewGroup
    UE3的数据绑定笔记
    概念、实现和沟通
    DirectX11的Shader Reflect的几个问题(2012222更新)
    测试livewriter
  • 原文地址:https://www.cnblogs.com/seeding/p/15246426.html
Copyright © 2011-2022 走看看