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 开发之旅。


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

参考文章

相关推荐
不正经的小寒9 小时前
PHP 8.2 核心特性
php
不正经的小寒9 小时前
PHP 8.1 核心特性
php
SEO_juper12 小时前
CDN 地域节点优化:匹配 GEO 信号,提升加载速度
服务器·ai·php·seo·cdn·geo·谷歌优化
dog25013 小时前
解析几何的现代范式-算力,拟合与对偶
服务器·开发语言·网络·线性代数·php
淘矿人13 小时前
【AI大模型】AI 大模型推理平台完整测评:8 家主流聚合服务对比分析
人工智能·sql·gpt·学习·github·php
XiYang-DING16 小时前
【Java EE】TCP—滑动窗口
tcp/ip·java-ee·php
.千余17 小时前
【Linux】网络基础2---Socket编程预备
linux·网络·php
雪度娃娃18 小时前
Asio异步读写——简单服务器和客户端异步通信
运维·服务器·网络·c++·php
中科三方19 小时前
域名解析修改后,用户仍访问旧IP?原因排查与高效解决指南
网络协议·tcp/ip·php
码农老李1 天前
openEuler2403服务器版 原生官方镜像和飞腾定制镜像
开发语言·php