Rumah tajuk utama 图解ThinkPHP5框架(一):基础知识,开发规范与目录结构

图解ThinkPHP5框架(一):基础知识,开发规范与目录结构

May 29, 2018 am 09:31 AM
php thinkphp5

基于最新ThinkPHP5.0.8制定,原搞是xmind思维导图制作,如果觉得图片看不太清楚,可以下载xmind源文件,用xmind软件打开。

另外,思维导图中使用的源码,全部在导图备注中,只有下载了xmind源文件,才可以看到。

想自学ThinkPHP5开发的同学,一定不要错过这个福利。正在从事ThinkPHP5项目开发的程序员,可以收藏,以备查询

一、思维导图:(建议点击图片打开新页面查看或者下载到本地查看)

ThinkPHP5框架基础知识,开发规范与目录结构

二、导图的文字说明:

thinkphp5基础

1 tp5是什么?

1.1 免费开源的,快速、简单的面向对象的轻量级PHP开发框架

1.2 简洁实用,代码至简,允许使用它开发商业项目

1.3 全新架构,与3.2版本相比,是一个全新的产品

1.4 tp5适合新项目开发,不适合老项目升级

2 安装方法

2.1 官网下载:thinkphp.cn,提供了核心版和完整版

2.2 composer安装:

2.2.1 windows:需要下载composer工具

2.2.2 mac或linux:终端工具在线安装

2.3 git安装(推荐):

3 开发规范

3.1 命名规范

3.1.1 驼峰命名法:由多个首字母大写的单词组成

大驼峰:第一个单词首字母大写

小驼峰:除首单词外,其它每个单词首字母大写

3.1.2 匈牙利命名法:单词之间用_下划线连接

前缀:首单词为前缀或前缀缩写,表示类型或功能:o_Div

无意义:多个单词之间用_下划线,纯粹是为了分隔单词,无明确意义:user_name

3.2 目录与文件

3.2.1 目录:小写字母+下划线: app_index

3.2.2 类库、函数文件统一以 .php 为后缀:func.php

3.2.3 类文件名均以命名空间定义,并且命名空间的路径和类库文件所在路径一致

3.2.4 类文件名:大驼峰命名,与类名保持一致,

3.2.5 类文件采:大驼峰法,其它文件采用小写+下划线命名:User,my_file.php

3.3 函数和类,属性命名

3.3.1 函数用小写字母加下划线:get_user_level()

3.3.2 类中的方法与属性全部采用小驼峰:getUserName(), tableName

3.3.3 类中魔术方法全部双下划线开头,与PHP官方要求一致:__callStatic()

3.4 常量和配置

3.4.1 常量:大写字母+下划线, APP_PATH

3.4.2 配置参数名:小写字母+下划线,url_route_on

3.5 数据表与字段

3.5.1 小写字母+下划线:user_table

4 目录结构

标记: 目录结构可定制

4.1 application:应用目录

1 common:公共模块目录(可选可改不可访问)

2 extra:扩展模块

3 index:默认模块

4 module_name:用户模块

4.1 config.php:模块配置文件 

4.2 common.php:模块函数文件

4.3 controller:控制器目录

4.4 model:模型目录

4.5 view:视图目录

5 command.php:命令行工具配置文件

6 common.php:公共函数文件

7 config.php:公共配置文件

8 database.php:数据库配置文件

9 route.php:路由配置文件

10 tags.php:应用行为扩展文件

4.2 extend:扩展目录(空)

4.3 public:Web部署目录,外部可访问

4.3.1 static目录:静态资源库(css,js,image)

4.3.2 index.php:应用入口文件

4.3.3 router.php:用于php自带webserver支持,可用于快速测试

4.3.4 robots.txt:搜索引擎爬虫文件

4.3.5 .htaccess:用于apache重写文件

4.4 runtime:应用运行目录

4.4.1 log:日志目录

4.4.2 临时生成的文件

4.5 thinkphp:框架系统目录

4.5.1 lang:语言包目录(zh-cn)

4.5.2 library:框架核心类库目录

1 think类库包目录

2 系统Traits目录

4.5.3 tpl:系统模板目录

1 default_index.tpl:默认首页模板

2 dispatch_jump.tpl:页面跳转模板

3 page_trace.tpl:页面调试信息显示模板

4 think_exception.top:页面异常信息模板

4.5.4 CONTRIBUTING.md:如何贡献您的代码

4.5.5 LICENSE.txt:授权协议

4.5.6 README.md:readme文件

4.5.7 base.php:基础定义文件

4.5.8 console.php:控制台入口文件

4.5.9 convertion.php:框架惯例配置文件

4.5.10 helper.php:助手函数文件

4.5.11 phpunit.xml:phpunit配置文件(与tests目录相关)

4.5.12 start.php:框架入口文件(加载base.php文件)

4.6 vendor:第三方类库目录

4.7 tests:测试目录,可暂不去管它

4.8 build.php:自动生成定义文件(参考)

4.9 composer:composer定义文件

4.10 think:命令行入口文件

4.11 LICENSE.txt:授权说明文件

4.12 README.md:用MarkDown写的说明文件

三、思维导图源文件下载(xmind格式):

图解ThinkPHP5框架(一):基础知识,开发规范与目录结构1.tp5基础.xmind.zip

【相关推荐】

1. 图解ThinkPHP5框架(二):应用运行流程与生命周期

2. 图解ThinkPHP5框架(三):配置类Config.php源码解读

3. 2017年最新的10个thinkphp视频教程推荐

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Panduan Pemasangan dan Naik Taraf PHP 8.4 untuk Ubuntu dan Debian Panduan Pemasangan dan Naik Taraf PHP 8.4 untuk Ubuntu dan Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 membawa beberapa ciri baharu, peningkatan keselamatan dan peningkatan prestasi dengan jumlah penamatan dan penyingkiran ciri yang sihat. Panduan ini menerangkan cara memasang PHP 8.4 atau naik taraf kepada PHP 8.4 pada Ubuntu, Debian, atau terbitan mereka

Tarikh dan Masa CakePHP Tarikh dan Masa CakePHP Sep 10, 2024 pm 05:27 PM

Untuk bekerja dengan tarikh dan masa dalam cakephp4, kami akan menggunakan kelas FrozenTime yang tersedia.

Bincangkan CakePHP Bincangkan CakePHP Sep 10, 2024 pm 05:28 PM

CakePHP ialah rangka kerja sumber terbuka untuk PHP. Ia bertujuan untuk menjadikan pembangunan, penggunaan dan penyelenggaraan aplikasi lebih mudah. CakePHP adalah berdasarkan seni bina seperti MVC yang berkuasa dan mudah difahami. Model, Pandangan dan Pengawal gu

Muat naik Fail CakePHP Muat naik Fail CakePHP Sep 10, 2024 pm 05:27 PM

Untuk mengusahakan muat naik fail, kami akan menggunakan pembantu borang. Di sini, adalah contoh untuk muat naik fail.

Cara Menyediakan Kod Visual Studio (Kod VS) untuk Pembangunan PHP Cara Menyediakan Kod Visual Studio (Kod VS) untuk Pembangunan PHP Dec 20, 2024 am 11:31 AM

Kod Visual Studio, juga dikenali sebagai Kod VS, ialah editor kod sumber percuma — atau persekitaran pembangunan bersepadu (IDE) — tersedia untuk semua sistem pengendalian utama. Dengan koleksi sambungan yang besar untuk banyak bahasa pengaturcaraan, Kod VS boleh menjadi c

Panduan Ringkas CakePHP Panduan Ringkas CakePHP Sep 10, 2024 pm 05:27 PM

CakePHP ialah rangka kerja MVC sumber terbuka. Ia menjadikan pembangunan, penggunaan dan penyelenggaraan aplikasi lebih mudah. CakePHP mempunyai beberapa perpustakaan untuk mengurangkan beban tugas yang paling biasa.

Bagaimana anda menghuraikan dan memproses HTML/XML dalam PHP? Bagaimana anda menghuraikan dan memproses HTML/XML dalam PHP? Feb 07, 2025 am 11:57 AM

Tutorial ini menunjukkan cara memproses dokumen XML dengan cekap menggunakan PHP. XML (bahasa markup extensible) adalah bahasa markup berasaskan teks yang serba boleh yang direka untuk pembacaan manusia dan parsing mesin. Ia biasanya digunakan untuk penyimpanan data

Jelaskan JSON Web Tokens (JWT) dan kes penggunaannya dalam PHP API. Jelaskan JSON Web Tokens (JWT) dan kes penggunaannya dalam PHP API. Apr 05, 2025 am 12:04 AM

JWT adalah standard terbuka berdasarkan JSON, yang digunakan untuk menghantar maklumat secara selamat antara pihak, terutamanya untuk pengesahan identiti dan pertukaran maklumat. 1. JWT terdiri daripada tiga bahagian: header, muatan dan tandatangan. 2. Prinsip kerja JWT termasuk tiga langkah: menjana JWT, mengesahkan JWT dan muatan parsing. 3. Apabila menggunakan JWT untuk pengesahan di PHP, JWT boleh dijana dan disahkan, dan peranan pengguna dan maklumat kebenaran boleh dimasukkan dalam penggunaan lanjutan. 4. Kesilapan umum termasuk kegagalan pengesahan tandatangan, tamat tempoh, dan muatan besar. Kemahiran penyahpepijatan termasuk menggunakan alat debugging dan pembalakan. 5. Pengoptimuman prestasi dan amalan terbaik termasuk menggunakan algoritma tandatangan yang sesuai, menetapkan tempoh kesahihan dengan munasabah,