zoukankan      html  css  js  c++  java
  • TPshop入门大纲

    笔记大纲:

    1. tpshop目录结构
    2. 功能模块
    3. 函数库
    4. 重要配置
    5. 助手函数
    6. 插件
    7. 模板

    1、TPshop目录结构

    TPshop目录结构

    看这个图,目录结构一目了然。
    下面要讲的内容也是根据这个图展开的。

    2、功能模块

    功能模块主要目录
    前几天刚刚学习了thinkphp,如果熟悉这个php框架的同学应该知道,application目录下的子目录代表模块。
    在这里,有四个模块:
    admin代表后台管理模块,
    home代表pc web的访问模块,
    mobile代表手机端的访问模块,
    common代表通用模块,目前只有工具类File,它可供其他模块调用,但是它不能调用业务模块。
    home和mobile模块都有各自的base类,base类完成了一些公共的业务功能和提供公共的业务接口,各模块所有控制器都继承于这个类,就不用每个控制器都要实现一遍共同的业务逻辑,比如session的确认等。
    还有一个值得学习的是因为有了pc和mobile两个不同的显示设备导致需要制作不同的视图,但是它们内部的业务逻辑是一样的,如果都在各个模块下敲一遍业务逻辑,维护非常麻烦,代码也冗余,所以TPshop在applicationhomelogic下写了共用逻辑层代码,home和mobile都调用这个公用逻辑部分。

    3、函数库

    如下两个文件是TPshop内部的函数库,它们对应的定义如下:
    applicationcommon.php 共用函数库,依赖于thinkphp框架或TPshop内部配置等;

    ![common.php](http://images2015.cnblogs.com/blog/1153957/201704/1153957-20170426001132694-878425102.png)
    applicationfunction.php php 基础共用函数库,不依赖其他库,有独立的实现,无关业务,即你可以将这个文件直接用于其他的非thinkphp框架的项目。 我这里列举几个函数
    ![function.php](http://images2015.cnblogs.com/blog/1153957/201704/1153957-20170426001207131-624764186.png)

    4、重要配置

    applicationconfig.php tp官方的配置文件,TPshop在这个文件底部添加了一些自己的配置,如分页配置、订单用户端显示状态、短信使用场景、订单用户端显示按钮 、静态页面等;
    applicationdatabase.php 数据库配置文件,tp官方的配置文件,注意表前缀。

    5、助手函数

    www hinkphphelper.php TP5 助手函数实现

     M() D() U() S() C() I() F()
    

    网上有许多人吐槽这种难读的代码,我觉得TP3的出发点事这类函数用得太多,比较典型,团队内熟悉一下也比较上手,TP5应该是不建议这样用了,但是为了兼容TP3和部分人习惯,还是以助手形式保留了这类接口。
    这个用不用的话,这取决于团队leader的决定了吧。

    6、插件

    TPshop有插件这样的概念,用官方的话说,就是像手机一样可以安装和卸载app,第三方开发了也可以使用,看来是个不错的设计理念,野心也很大。

    ![插件目录](http://images2015.cnblogs.com/blog/1153957/201704/1153957-20170426001246834-681125947.png)
    这里主要插件类型是第三方登录支持和第三方支付方式。 你只需拿现有的例子依样画葫芦就可以定制出插件,官方视频里头以支付宝为例子讲了实现原理,建议看一下。

    7、模板

    ThinkPHP官方的视图文件是一般是放在各个模块之下,但是出于模板可定制和替换的需求,按照原先放在各个模块之下,管理起来非常麻烦容易出错,TPshop将视图目录迁移到根目录的template,当然,这是可改变的。
    虽然更换模板操作是在web界面下点击几下按钮实现的,但是其原理非常简单,就是在模块目录下的html.php中更改模板路径即可,如:

    'view_path'    => './template/pc/default/',
    

    参考:

    ThinkPhP5 项目实战(第四讲):TPshop目录结构
    http://www.kancloud.cn/tpshop/thinkphp5/280417

    写于2017-4-21
    -end-

  • 相关阅读:
    scgi_params
    ngin 模块及模板
    nginx常用模块
    HTML
    nginx部署网页小游戏
    nginx的server标签还有日志管理
    关于使用yum安装的nginx的主从配置文件的碎碎念
    判断所ping主机的操作系统
    CentOS 7修改主机名
    CentOS7 设置系统时间
  • 原文地址:https://www.cnblogs.com/hackbee/p/6765187.html
Copyright © 2011-2022 走看看