ThinkPHP5基础入门

news/2024/10/7 15:24:58 标签: php

文章目录

  • ThinkPHP5基础入门
    • 一、引言
    • 二、环境搭建
      • 1、前期准备
      • 2、目录结构
    • 三、快速上手
      • 1、创建模块
      • 2、编写控制器
      • 3、编写视图
      • 4、编写模型
    • 四、调试与部署
      • 1、调试模式
      • 2、关闭调试模式
      • 3、隐藏入口文件
    • 五、总结

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 文件:

<!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

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


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

参考文章

  • ThinkPHP5入门(基础篇)
  • thinkphp5的简单介绍与使用

http://www.niftyadmin.cn/n/5692969.html

相关文章

论文阅读笔记-How to Fine-Tune BERT for Text Classification?

前言 How to Fine-Tune BERT for Text Classification? 预训练语言模型很强,通过微调可以给你的任务模型带来明显的提升,但是针对具体的任务如何进行微调使用,就涉及到了考经验积累的tricks,最近在打文本相关的比赛,正好用预训练模型为基础构建下游任务模型,所以着重的…

CSS——文字打字机效果

CSS——文字打字机效果 本文通过纯 CSS 实现文字的打字机效果&#xff0c;然后借助 JS 实现了扩展。 typewriter 基本思路 使用伪元素覆盖原文字&#xff0c;并且使用伪元素模拟闪烁的光标效果。 具体流程 首先是一些基本的设置 <!DOCTYPE html> <html lang"…

RabbitMQ入门3—virtual host参数详解

在 RabbitMQ 中&#xff0c;创建 Virtual Host 时会涉及到一些参数配置&#xff0c;比如 tags 和 Default Queue Type。下面是对这两个参数的详细解释&#xff1a; 1. Tags Tags 是 Virtual Host 的标记&#xff0c;用来为 Virtual Host 添加元数据&#xff0c;帮助你管理和组…

MoveIt2-humble----在 RViz 中实现可视化

官方文档上的教程&#xff0c;从moveit1的melodic到moveit2的foxy基本一致&#xff0c;但是从最新的humble开始有了很大的变化&#xff0c;其中之一便是 lambda表达式 的广泛使用。 本节为教程的第二节&#xff0c;会介绍一个工具&#xff08;moveit_visual_tools&#xff09;…

allegro 不同页面相同网路的连接

一、cadence学习笔记&#xff08;1&#xff09;-原理图库制作 绘制好各个界面 放置OFFPAGE 绘制好单个界面是这个样子的&#xff0c;并将剩下的界面进行相同的操作 所有界面完成后&#xff0c;进入设计界面 右键design1.dsn选择Annotate… 点击OK后可以看到WiFi界面OFFPAGE旁边…

windows下DockerDesktop命令行方式指定目录安装

windows下DockerDesktop指定目录安装(重新安装) 因为DcokerDesktop占用内存较大, 并且拉去镜像后占用本地空间较多,所以建议安装时就更改默认安装路径和镜像存储路径 这里,展示了从下载到安装的过程: 首先下载DcokerDesktop;找到Docker Desktop Installer.exe 并重命名为 do…

TM1618控制共阳极数码管的数据传送问题

数据传送中的问题 首先每个字节是按照一个地址写入的&#xff0c;而共阳极数码管的公共端是SEG引脚连接的。这使得数码管显示的编码是按照竖向的字节。如下图所示中&#xff0c;横向是公共端&#xff0c;竖向是实际编码字符字节。 数据转换方式 这样可以一次写入所有需要显示…

请描述一下数据库的负载测试和压力测试。请简要描述不同类型的联接(如内联接、左外联接、右外联接、全外联接等)。

请描述一下数据库的负载测试和压力测试。 一、数据库的负载测试 定义&#xff1a; 负载测试是通过模拟实际用户量和操作情况来评估数据库系统的性能和稳定性的过程。它主要通过逐步增加系统负载&#xff0c;测试系统性能的变化&#xff0c;并最终确定在满足性能指标的情况下&a…