# thinkp5 **Repository Path**: he-yang-chun/thinkp5 ## Basic Information - **Project Name**: thinkp5 - **Description**: 上传thinkphp5.1 文章的登陆跟增删改查 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-05-03 - **Last Updated**: 2024-07-03 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## 目录结构 - composer.json 记录当前项目依赖管理关系 ``` "require": { "php": ">=5.6.0", "topthink/framework": "5.1.*", "topthink/think-captcha": "2.0.*" }, ``` - composer.lock 锁定依赖包版本 - vendor 依赖的第三方 不过使用的时候 不需要我们引入autoload.php (主入口好处) - thinkphp 框架核心代码(此处不能有修改,可以继承并重写) - think 命令行 php think (1.安装了php环境 2.运行命令行所在目录要think) - .gitignore git忽略文件(指定目录或文件不参与提交) ``` runtime 项目当中模板解析、缓存、日志、session文件等 public/uploads 上传的素材 文件、图片等 `` - router 路由 把长地址 伪装短地址 http://www.baidu.com/index.php/admin/artice/index vs http://www.baidu.com/artices - public 静态资源 + 主入口文件 - index.php - robots.txt 留给收索引擎(百度、soso、谷歌)蜘蛛爬虫 项目开发测试中 可以用来阻止收录 - 重写(404) .htaccess ``` 用于【apache】的重写文件 RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L] /index/index/demo => 原生 /index.php/index/index/demo ``` nginx ``` location / { if (!-e $request_filename){ rewrite ^(.*)$ /index.php?s=$1 last; break; } } ``` - extend 扩展 当框架里没有第三方功能,并且composer也没有 把所需要代码编写放置该目录 - config 配置文件 - 全局配置文件 针对所有的模块生效 - 模块配置文件 仅当前模块生效 - application - 模块1 - controller - model - view - config - 模块2 ## 编写 文章添加 - 准备数据表 - 准备article控制器 add方法 对应视图文件 正确引入样式和js - 表单提交 - 表单数据校验 - 操作数据库 插入 - $this->success | $this->error - 跳转到 文章列表 - 提交线上仓库