zend framework2 - 通过配置类加载提高性能
来源:互联网 发布:微信摇一摇赛跑软件 编辑:程序博客网 时间:2024/06/03 19:16
Autoloader Classmap
使用classmap,就可以在初始化的时间返回一个‘类-文件’对应的array,从而加速加载类的速度。默认的类加载是使用StandardAutoloader
,正则表达式来将类名字转换成文件名再加载,试想一下每次加载都要跑一下性能不高的正则匹配,速度能有多快呢
这是默认的自动加载配置src/module/<app>/Module.php
1
2
3
4
5
6
7
8
9
10
11
12
13
public
function
getAutoloaderConfig()
{
return
array
(
'Zend\Loader\StandardAutoloader'
=>
array
(
'namespaces'
=>
array
(
__NAMESPACE__ => __DIR__ .
'/src/'
. __NAMESPACE__,
),
),
'Zend\Loader\ClassMapAutoloader'
=>
array
(
__DIR__ .
'/config/autoload_classmap.php'
,
),
);
}
将其修改成
1
2
3
4
5
6
7
8
9
10
11
12
13
14
public
function
getAutoloaderConfig()
{
return
array
(
'Zend\Loader\ClassMapAutoloader'
=>
array
(
__DIR__ .
'/config/autoload_classmap.php'
,
),
'Zend\Loader\StandardAutoloader'
=>
array
(
'namespaces'
=>
array
(
__NAMESPACE__ => __DIR__ .
'/src/'
. __NAMESPACE__,
),
),
);
}
然后使用ZF2自带的命令行工具生成classmap文件
1
$ php zf2
/bin/classmap_generator
.php -l <your-zf2-app-location> -o <your-zf2-app-location>
/config
之后就会在app/config
目录下生成autoload_classmap.php
文件。
Template Map
和classmap类似,这个会将‘模板-文件’的对应关系变成一个array并返回,免去了转换的过程。
同理,运行如下命令
1
$ php zf2
/bin/templatemap_generator
.php -l -l <your-zf2-app-location> -o <your-zf2-app-location>
/config
这样,template_map.php
就会在app/config
下生成。然后,在app/config/module.config.php
的view_manager
下加上以下那句话
1
2
3
'view_manager'
=>
array
(
'template_map'
=>
include
__DIR__ .
'/template_map.php'
,
0 0
- zend framework2 - 通过配置类加载提高性能
- zend framework2中的自动加载机制(随记)
- Zend Framework2.0(zf2) Windows上安装配置
- Zend Framework2 入门教程
- zend framework2初探(二)
- Zend Framework2 问题手札
- Zend Framework2 DB操作
- Zend Framework2 入门教程
- Zend Framework2 - Cache 用法
- Zend Framework2 - DB事务处理
- Zend Framework2 入门教程
- Zend Framework2 入门教程
- Zend Framework2 入门教程
- zend framework2流程分析
- Zend Framework2 学习笔记
- Zend Framework2学习二:开始使用Zend Framework2
- zend framework2 集成 smarty 资料
- Zend Framework2学习一:介绍
- 学习七十一雾央MFC游戏心得,初体验(一)
- iOS微信登录功能的实现
- spring中事务管理的几种方式
- [Android基础]theme、style、attr之间联系与区别
- 在eclipse中导入spring源码
- zend framework2 - 通过配置类加载提高性能
- 使用CocoaPods管理依赖库
- Java冠军程序员
- HelloWorld!
- 最大子矩阵(限制矩阵的大小)
- 信托公司人均利润上演冰与火 最高2600万最低18万[万奥]
- 前端思维导图
- linux下的文件IO缓冲区,及其相关操作
- 黑马程序员--内存管理知识总结