百分百源码网-让建站变得如此简单! 登录 注册 签到领金币!

主页 | 如何升级VIP | TAG标签

当前位置: 主页>网站教程>网页制作> PHP——thinkphp5的详解介绍与运用
分享文章到:

PHP——thinkphp5的详解介绍与运用

发布时间:09/01 来源:未知 浏览: 关键词:
此文章适用于刚学过php但还没接触过框架的小伙伴。

前言

不知大家可否有这样的感受,经过一段时间的php学习发明这门说话并不是很难,并且很容易上手。马马虎虎写个网页界面,再把数据库内容弄一弄,貌似就没什么难度了。起初的小编也是这样傻fufu的认为做个网站也就仅此罢了——-just so so( ̄_, ̄ )。然而随着学习的不竭深入,猛然发明事实并非如此,再回想起初的念头,只能默默地感慨本人too young too simple。就小编而言,一开端学的内容是PHP的入门阶段知识,简而言之就是把代码往那一堆,然后调数据库显示实现功效就完事了。随着想写的的功效的增添,小编慢慢发明写个设计要写20多个页面,改个代码就要半天,but小编当时还并没有框架这一概念。直到学习了java EE的Struts2框架,小编才意识到本人是如此的菜—-瞬时原地爆炸。为了强化php的学习,小编就花了些时间来研讨php众多框架中的一个—>thinkPHP5。

后序
小编写这篇文章旨在做一个学习笔记,顺便给想要学习thinkphp5的小伙伴一个简便地浅显地介绍,置于数据库的操纵小编就不介绍了,由于真的许多,不外开发手册上有较为具体的说明,写的不好的地方请大神纠正。此外小编个人觉得tp5的快速入门手册也是值得一看的(付费)。

1.什么是thinkphp5框架?

在介绍thinkphp5此前,我们先来谈一谈什么是框架。简言之,别人帮你建好了房子但尚未装修,你需要在别人设计好的户型里去装修,省略你搬砖的反复性操纵。(关于框架的深入懂得大家可以自行baidu)。

ThinkPHP是一个快速、简便的基于MVC和面向对象的轻量级PHP开发框架,遵照Apache2开源和谈公布,自2006年产生以来不断秉承简约有用的设计原则,在保持杰出的机能和至简代码的同时,特别重视开发体验和易用性,并且具有众多的原创功效和特性,为WEB利用和API开发供给了强有力的支撑。(关于初学者而言理解概念小编认为并没什么用,还不如直接在做项目中感受一下)

2.前期预备工作

(1)编程工具的选中:开放工具:phpStorm + 效劳器工具:phpStudy

关于工具的选中主要看个人的喜欢,但最好选中主流的编纂工具。

phpstrom 下载及安置教程地址:http://www.php.cn/xiazai/gongju/122

phpStudy下载及安置教程地址:http://www.php.cn/xiazai/gongju/845

假如没有用过phpstudy可以链接上面的地址去学习一下phpsyudy的根本操纵办法

*下面这一步临时用不到

搭建PhpStorm+PhpStudy开发环境:https://blog.csdn.net/u012861467/article/details/54692236

(2)下载安置thinkphp5

下载地址:http://www.thinkphp.cn/donate/download/id/1155.html

安置办法:将紧缩包解压放phpStudy/ww的在项目下就可以

20180830170621892.png

20180830181858792.png输入网址:localhost/thinkphp_5/public/ 显现下面界面则安置成功

20180830170942458.png

(3)学习thinkphp5所要具备的知识
php入门阶段的知识+php面向对象的程序设计(==》命名空间那部分可以先看看)+mvc设计模式

3.thinkphp5的根本使用办法

(1)参照 材料: thinkphp5完全开发手册: https://www.kancloud.cn/manual/thinkphp5/118003 开发手册内容有许多没有必要直接看下来,关于初次接触tp5的小伙伴而言,你需要用到哪部分知识就去查寻哪部分。

(2)名目构造:(大致理解即可)

20180830182702639.png

tp5的名目文件有许多,这里我们着重讲一下划线的部分,其他部分大家可以参照 开发手册。第一说一下application,简便地说这个部分就是我们编写代码的地方。如上图所示,index模块为前端,而我们一样会本人创立admin模块及后端治理员。

20180830183511106.png2018083018372174.png

index模块和admin模块下是我们熟知的MVC,datebase.php为配置数据库的文件,application下的config.php是影响全部模块的配置文件,而index和admin的config.php只影响本人模块下的文件。public下的static是放静态资源的文件,index.php为入口文件,即只能通过这一文件拜访。

(3)MVC

Model(模型)是利用程序中用于处置利用程序数据逻辑的部分。

平常模型对象负责在数据库中存取数据。

View(视图)是利用程序中处置数据显示的部分。

平常视图是根据模型数据创立的。

Controller(操纵器)是利用程序中处置会员交互的部分。

平常操纵器负责从视图读取数据,操纵会员输入,并向模型发送数据。

2018083115161754.png

Model(模型)

a: 数据库的配置:

翻开database.php,一样要改动的就是划线部分。别的在thinkphp5.0完全开发手册中,我们在根基名目下可以看到开发标准,这是我们需要理解的。

20180831152312199.png

b: 创立模型:(这部分在开发手册中也有更具体的解读)

       <?php
    namespace app\admin\model;
    use think\Model;

    class User extends Model
    {

    }
    ?>

大多状况下,我们无需为模型定义任何的属性和办法即可完成根基的操纵。模型会主动对应一个数据表。标准是:数据库前缀+当前的模型类名(不含命名空间)由于模型类命名是驼峰法,所以猎取实际的数据表的时候会主动转换为小写+下划线命名的数据表名称,所以只要创立一个与数据表同名的model就可以。假如你的数据表不是像tp_user这样之前缀加下划线命名可以在model中指定数据表。

        <?php
    namespace app\admin\model;
    use think\Model;
    use think\Db;
    class Swe extends Model
    {
        // 设定完全的数据表(包括前缀)
        protected $table = 'swe';
    }

下面用一个例子来说明:

第一在admin模块下创立以下几个文件,在controller下创立User.php ,Model下创立User.php ,在view下创立user文件夹,在user文件夹下创立user.html

并创立user表 字段有id,clickname,email,birthday

代码如下:

controller下的User.php

<?php
namespace app\admin\controller;
use think\Controller;
use app\admin\model\User as UserModel;
class User extends Controller
{
//    // 创立会员数据页面
//    public function create()
//    {
//        return $this->fetch('user');//加载模板,会主动寻到view下的user的user.html并显示
//    }

// 创立会员数据页面
    public function create()
    {
        return view('user');//加载模板,会主动寻到view下的user的user.html
    }
// 新增会员数据
    public function add()
    {
        $user = new UserModel;
        if ($user->allowField(true)->save(input('post.'))) {//input('post.'))为表单提交的数据
            return '会员[ ' . $user->nickname . ':' . $user->id . ' ]新增成功';
        } else {
            return $user->getError();
        }
    }
    // model的助手函数新增会员数据
    public function add3()
    {
        // 使用model助手函数实例化User模型
        $user = model('User');
// 模型对象赋值
        $user->data([
            'nickname'  =>  'SWE',
            'email' =>  'thinkphp@qq.com'
        ]);
        if ($user->save()) {
            return '会员[ ' . $user->nickname . ':' . $user->id . ' ]新增成功';
        } else {
            return $user->getError();
        }
    }

Model下的User.php

<?php
namespace app\admin\model;
use think\Model;

class User extends Model
{

}

user.html

<!doctype html>
<html>
<head>
    <meta charset="UTF-8">
    <title>创立会员</title>
    <style>
    </style>
</head>
<body>
<h2>创立会员</h2>
<FORM method="post" class="form" action="{:url('admin/user/add')}">
    昵 称:<INPUT type="text" class="text" name="nickname"><br/>
    邮 箱:<INPUT type="text" class="text" name="email"><br/>
    生 日:<INPUT type="text" class="text" name="birthday"><br/>
    <input type="hidden" name="__token__" value="{$Request.token}" />
    <INPUT type="submit" class="btn" value=" 提交 ">
</FORM>
</body>
</html>

url:localhost/tp5/public/index.php/admin/user/create 施行user.php下的create办法

return $this->fetch(‘user’); //加载模板,会主动寻到view下的user的user.html并显示

user.html提交数据到add办法

实例化Model类 ,$user->allowField(true)->save(input(‘post.’))提交数据到数据库

跟多相关问题请拜访PHP中文网:PHP视频教程

以上就是PHP——thinkphp5的详解介绍与使用的具体内容,更多请关注百分百源码网其它相关文章!

打赏

打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

百分百源码网 建议打赏1~10元,土豪随意,感谢您的阅读!

共有151人阅读,期待你的评论!发表评论
昵称: 网址: 验证码: 点击我更换图片
最新评论

本文标签

广告赞助

能出一分力是一分吧!

订阅获得更多模板

本文标签

广告赞助

订阅获得更多模板