当前位置: 首页 > 后端技术 > PHP

PHP-CI4系列-框架介绍

时间:2023-03-29 16:14:47 PHP

本文简单介绍和补充CI4的整个框架。如无涉及内容,请以官网用户手册为准。CI4的安装有三种方式:下载安装、composer、git1。最快的下载安装方式是直接从官网下载最新的包。解压后可以作为一个项目,在此基础上进行开发。解压后的目录如下:只需要保留这些文件和文件夹:app、public、system、writable、.editorconfig、env、license.txt、README.md。不需要其他文件和文件夹。如果需要使用composer进行包管理,请保留composer.json。2.composer安装需要熟悉composer。具体安装步骤请参考官网composer安装。3、在CI4的github中安装gitfork一个项目,然后通过gitclone到本地,此时和第一种方法没什么区别。如果需要git管理项目,推荐使用这种方式。框架结构1.App官方的话:项目的应用目录,官方说支持多个应用目录,我试过发现不靠谱,多个项目的建立涉及到改变一些文件的路径,一些在系统目录下的核心文件不是很友好,也很危险。建议不要尝试。目录里面的内容很多,也是我们主要的编码区,下一篇会详细讲解。2.public官方的话:外部可以访问的目录,index.php在这里,所以这个目录相当于根目录。如果不设置为apache的根目录,访问时会出现路由问题。由此可见,如果项目中的静态资源也必须放在这里,否则将无法访问。2.1.htaccessapache配置文件,注意两段代码:第一段用来去掉地址栏的www,为什么要注意??因为谷歌浏览器的一个策略:会自动隐藏www。如果没有这一段,前后端开发会出现跨域访问问题,因为www.example.com和example.com是不同的域名。#重写"www.example.com->example.com"RewriteCond%{HTTPS}!=onRewriteCond%{HTTP_HOST}^www\.(.+)$[NC]RewriteRule^http://%1%{REQUEST_URI}[R=301,L]第二段用于删除地址栏中的index.php#检查用户是否试图访问有效文件,#如图像或css文档,如果是它发送#请求到前端控制器,index.phpRewriteCond%{REQUEST_FILENAME}!-fRewriteCond%{REQUEST_FILENAME}!-dRewriteRule^(.*)$index.php/$1[L]2.2index.phpframework入口文件,内容比较简单,两件事:确定php版本和加载系统和启动3.systemframeworkcore,这个文件夹的内容不要动。会专门介绍框架的核心源码,大家一起学习。官方的话:4、可写框架的上传下载文件、缓存文件、日志文件等,只能通过框架访问。静态资源应该放在公共的地方,不能直接访问。4.1缓存框架运行时的缓存文件4.2日志框架运行时的日志信息,可以在/app/Config/Logger.php中的$threshold变量中调整要打印的日志级别。它对于开发和调试特别有用。生产环境请慎重选择。4.3sessionframework启用session后,会在该目录下生成一个session文件。框架默认使用文件驱动来管理session,也可以改为数据库。详情请看。4.4上传框架的可选文件上传路径。需要注意的是,如果文件上传到该目录下,是不能直接使用静态资源访问的,需要通过框架路由访问。所以建议直接将上传文件的路径设置为public目录。也可能是我的使用方式不对,有空再研究一下。官方的话:4.5env测试环境配置,在composer下使用。总结从安装和框架结构来看,CI4还是非常容易上手的。如果你来自CI3,你会发现框架结构发生了很大的变化。这里可以看到一些larval和yii的影子,应该是借鉴了他们的。毕竟CI3不是这样的。