ThinkPHP5基础入门

文章目录

ThinkPHP5基础入门

一、引言

ThinkPHP5 是一个基于 MVC 和面向对象的轻量级 PHP 开发框架,自2006年诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简代码的同时,尤其注重开发体验和易用性。本文旨在为初学者提供一个简洁明了的入门指南。

二、环境搭建

1、前期准备

  • 编程工具:推荐使用 PHPStorm 作为开发工具,服务器可以使用 phpStudy。
  • 下载安装 :从 ThinkPHP官网 下载最新版 ThinkPHP5,解压后放置到 phpStudy 的 WWW 目录下。

2、目录结构

ThinkPHP5 的目录结构遵循 MVC 设计模式,主要包含以下部分:

  • application:存放应用(模块)的目录。
  • public:对外访问的目录,包含入口文件 index.php
  • thinkphp:框架核心目录。
  • vendor:Composer 依赖目录。

三、快速上手

1、创建模块

application 下创建一个名为 index 的模块,该模块下包含 controllerviewmodel 目录。

2、编写控制器

application/index/controller 目录下创建 Index.php 文件:

php 复制代码
<?php
namespace app\index\controller;
use think\Controller;

class Index extends Controller
{
    public function index()
    {
        return 'Hello, ThinkPHP5!';
    }
}

3、编写视图

application/index/view 目录下创建 index.html 文件:

html 复制代码
<!doctype html>
<html>
<head>
    <meta charset="UTF-8">
    <title>首页</title>
</head>
<body>
    <h1>{$content}</h1>
</body>
</html>

4、编写模型

application/index/model 目录下创建 User.php 文件:

php 复制代码
<?php
namespace app\index\model;
use think\Model;

class User extends Model
{
    // 定义时间戳字段名
    protected $createTime = 'create_time';
    protected $updateTime = 'update_time';
}

四、调试与部署

1、调试模式

开发阶段可以开启调试模式,以便在异常时显示更多信息:

php 复制代码
// application/config.php
'app_debug' => true,

2、关闭调试模式

部署时,关闭调试模式以提高性能并保护服务器信息:

php 复制代码
// application/config.php
'app_debug' => false,

3、隐藏入口文件

可以通过 .htaccess 文件隐藏 URL 中的 index.php

apache 复制代码
<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>

五、总结

ThinkPHP5 提供了一个简洁、高效的开发体验,通过 MVC 设计模式,使得代码结构清晰,易于维护。通过本文的介绍,相信初学者可以快速上手 ThinkPHP5,开始自己的 PHP 开发之旅。


版权声明:本博客内容为原创,转载请保留原文链接及作者信息。

参考文章

相关推荐
Мартин.3 小时前
[Meachines] [Easy] Bashed PHP Bash+Python计划任务权限提升
python·php·bash
小机学AI大模型3 小时前
关于使用PHP时WordPress排错——“这意味着您在wp-config.php文件中指定的用户名和密码信息不正确”的解决办法
开发语言·php
一尘之中12 小时前
IPoIB(IP over InfiniBand)数据接收与发送机制详解
网络·tcp/ip·php
你我哈13 小时前
微信小程序-点餐(美食屋)02开发实践
微信小程序·小程序·html·php·美食
ac-er888815 小时前
Yii框架中的扩展:如何使用外部库
开发语言·php
新玉540116 小时前
PHP反序列化练习
android·开发语言·前端·php
亿坊电商1 天前
基于亿坊PHP框架构建物联网解决方案的优势分析!
开发语言·物联网·php
007php0071 天前
在系统重构中的工作计划与总结
大数据·开发语言·人工智能·后端·重构·aigc·php
戴草帽的大z2 天前
在Ubuntu上使用Apache+MariaDB安装部署Nextcloud并修改默认存储路径
linux·经验分享·ubuntu·php·apache·mariadb·nextcloud
清风细雨_林木木2 天前
wangEditor富文本编辑器,Laravel上传图片配置和使用
php·laravel