第5讲 zend原理深度剖析
1. 文件.htaccess的重写机制
如果 apache 开启了重写机制,则在 apache 启动时,会去找网站的根目录有没有 .htaccess 文件,如果有则按 .htaccess 文件中的规则,没有则默认。
在 apache 的底层代码中有如下方法:
所以读取的是网站根目录,命名为 .htaccess 的文件
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]
2. 在php项目中,我们通过对url的重写,可以完成对整个项目只有一个入口
新建一个项目举列:
接着配置虚拟主机。
没有设置入口文件之前:
随便可以访问哪个文件夹下面的文件
创建 .htaccess 文件,.ht 表示 apache。
windows 文件不能以 . 开头,在linux下表示隐藏文件。
1.先创建好,在另存为。
#启用重写机制
RewriteEngine On
#启用重写机制的规则是什么,后面为正则表达式,后面为定位到的文件
RewriteRule ^.*$ enter.php
#启用重写机制
RewriteEngine On
#启用重写机制的规则是什么,后面为正则表达式,后面为定位到的文件
#可以写多个规则,从上到下依次匹配。以.php结尾的到enter.php,以.html结尾的到enter2.php去。
RewriteRule ^.*$\.php enter.php
RewriteRule ^.*$\.html enter2.php
接着,在apache中启用rewirte机制。
可以了:
用自己创建的项目,完成初始化工作,并调用某个类。
创建一个类:
在入口文件中调用类:
所以,Zend 中,index.php 调用 Action Controller ,拆分Url, 用反射机制调用类。
3. 如何增加MVC
3.1 增加控制器
3.2 增加视图
步骤:
<?php//做个父类,专门供其他的controller来继承,如果有需要链接数据库,则继承这个类class BaseController extends Zend_Controller_Action
{public function init(){$url = constant('APPLICATION_PATH') . DIRECTORY_SEPARATOR . 'configs' . DIRECTORY_SEPARATOR . 'application.ini';$dbconfig = new Zend_Config_Ini($url,'mysql');$db = Zend_Db::factory($dbconfig->db);$db->query('SET NAMES UTF8');Zend_Db_Table::setDefaultAdapter($db);}
}
第5讲 zend原理深度剖析相关推荐
- git原理详解与实操指南_全网最精:学git一套就够了,从入门到原理深度剖析
以上资源收集至互联网 如有侵权请联系删除 资源获取方式 扫码关注资源库公众号 回复密码'20190812' 即可获得 截图展示 课程信息 课程难度:中级 学习人数:148352 课程状态:已完结 时长 ...
- 唯一插件化Replugin源码及原理深度剖析--插件的安装、加载原理
上一篇 唯一插件化Replugin源码及原理深度剖析–唯一Hook点原理 在Replugin的初始化过程中,我将他们分成了比较重要3个模块,整体框架的初始化.hook系统ClassLoader.插件的 ...
- 云原生钻石课程 | 第6课:Kubernetes网络架构原理深度剖析(上)
点击上方"程序猿技术大咖",关注并选择"设为星标" 回复"加群"获取入群讨论资格! 本篇文章来自<华为云云原生王者之路训练营>钻 ...
- 【云驻共创】华为云云原生之Kubernetes网络架构原理深度剖析(上)
文章目录 前言 一.Kubernetes诞生背景 1.云原生的概念 2.云原生架构 3.Kubernetes(k8s) 二.Kubernetes基本网络模型剖析 1.概念厘清 1.1 二层桥接 VS ...
- 云原生钻石课程 | 第5课:Kubernetes存储架构原理深度剖析(下)
点击上方"程序猿技术大咖",关注并选择"设为星标" 回复"加群"获取入群讨论资格! 本篇文章来自<华为云云原生王者之路训练营>钻 ...
- 布隆过滤器原理深度剖析
HBase布隆过滤器原理深度剖析 1. 数据结构与原理 1.1 初始化 1.2 变量映射 1.3 变量检索 1.4 总结 2. 过滤器特性 2.1 误判率 2.2 判断特点 3. 案列代码 1970年 ...
- Mysql binlog应用场景与原理深度剖析
1 基于binlog的主从复制 Mysql 5.0以后,支持通过binary log(二进制日志)以支持主从复制.复制允许将来自一个MySQL数据库服务器(master) 的数据复制到一个或多个其他M ...
- 好文推荐 | MySQL binlog应用场景与原理深度剖析
作者:田守枝 来自:田守枝的博客(公众号) 本文深入介绍Mysql Binlog的应用场景,以及如何与MQ.elasticsearch.redis等组件的保持数据最终一致.最后通过案例深入分析binl ...
- Spring 框架之 AOP 原理深度剖析!|CSDN 博文精选
作者 | GitChat 责编 | 郭芮 出品 | CSDN 博客 AOP(Aspect Oriented Programming)面向切面编程是 Spring 框架最核心的组件之一,它通过对程序结构 ...
- 史上最硬核网页截图方案原理深度剖析
作者 | 陈亮 靡不有初,鲜克有终 简介 剖析流行的截图插件 html2canvas 的实现方案,探索其功能上的一些不足之处及不能正确截取的一些场景,比如不支持 css 的 box-shadow 截取 ...
最新文章
- Lua 函数、闭包、尾调用总结
- 多线程python 客户端fuwuq实现方式_python实现二叉树数据结构的多种遍历方式
- 【Alpha】事后分析
- android短信增加条目,Android仿短信条目右上角的红色小圆球提示气泡
- 堆和栈的区别(经典干货)
- roads 构筑极致用户体验_万物互联大势所趋 华为保驾护航运营商“三个转型”...
- (190)FPGA变量初始化方法initial
- SHELL中,如何分割字符串
- Bellman-ford算法图解
- 计算机考试67,注册电气工程师基础考试计算机基础知识试题答案(67)
- 爷青回|用Python重构【超级马里奥】制作过程+解析|快收藏起来跟小伙伴一起拯救公主吧~
- 深度好文| Redis面试全攻略
- 以虎嗅网4W+文章的文本挖掘为例,展现数据分析的一整套流程
- 51个最佳jQuery教程和示例
- 菜鸟教程中的面试题总结
- springboot蓝球场馆预约系统毕业设计-附源码211706
- 如何删除数组中的一个元素
- 怎么确定K均值聚类中的K(基于matlab)
- 学术角度看区块链:数字广告行业的“他山之石”
- App通过(后台返回apk链接)下载apk并且安装