《PHP实战:Zend Framework教程之Resource Autoloading用法实例》要点:
本文介绍了PHP实战:Zend Framework教程之Resource Autoloading用法实例,希望对您有用。如果有疑问,可以联系我们。
PHP编程本文实例讲述了Zend Framework中Resource Autoloading用法.分享给大家供大家参考,具体如下:
PHP编程通常,在开发应用程序中,可能类文件名不能依照标准Zend Framework的建议定义的,这意味着你的类文件不能被自动加载器发现.Zend_Loader_Autoloader_Resource提供了解决方案.
PHP编程资源仅仅是一个名称对应一个组件的命名空间(追加到自动加载器的命名空间)和路径(相对的自动加载器的基本路径),例如可以这样:
PHP编程
$loader = new Zend_Application_Module_Autoloader(array(
'namespace' => 'Blog',
'basePath' => APPLICATION_PATH . '/modules/blog',
));
PHP编程具体实例如下:
PHP编程path/to/some/resources/
|-- forms/
| `-- Guestbook.php // Foo_Form_Guestbook
|-- models/
| |-- DbTable/
| | `-- Guestbook.php // Foo_Model_DbTable_Guestbook
| |-- Guestbook.php // Foo_Model_Guestbook
| `-- GuestbookMapper.php // Foo_Model_GuestbookMapper
PHP编程创建资源装载器:
PHP编程
$loader = new Zend_Loader_Autoloader_Resource(array(
'basePath' => 'path/to/some/resources/',
'namespace' => 'Foo',
));
PHP编程定义资源类型
PHP编程Zend_Loader_Autoloader_Resourse::addResourceType()有三个参数:资源名称,指定的资源路径的相对资源路径名, 资源类型组件前缀.
PHP编程在上面的树,我们有三种资源类型:form(在子目录forms中,资源前缀是Form),model(在子目录models中,资源前缀是Model),并dbtable(在子目录“models/DbTable”中,资源前缀是“Model_DbTable”).
PHP编程具体定义如下:
PHP编程
$loader->addResourceType('form', 'forms', 'Form')
->addResourceType('model', 'models', 'Model')
->addResourceType('dbtable', 'models/DbTable', 'Model_DbTable');
PHP编程也可以在构造函数中指定
PHP编程
$resourceLoader = new Zend_Loader_Autoloader_Resource(array(
'basePath' => 'path/to/some/directory',
'namespace' => 'My',
'resourceTypes' => array(
'acl' => array(
'path' => 'acls/',
'namespace' => 'Acl',
),
'form' => array(
'path' => 'forms/',
'namespace' => 'Form',
),
'model' => array(
'path' => 'models/',
'namespace' => 'Model',
),
),
));
PHP编程使用以定义资源
PHP编程
$form = new Foo_Form_Guestbook();
$guestbook = new Foo_Model_Guestbook();
PHP编程模块中的资源自动加载
PHP编程Zend Framework的MVC鼓励使用“modules”,模块默认情况下,通常有一些资源类型,Zend Framework提供了一个模块的标准目录布局.在这种范式中,资源自动加载器非常有用,他们是默认启用的.
PHP编程模块的基本目录结构:
PHP编程<modulename>
configs/
application.ini
controllers/
helpers/
forms/
layouts/
filters/
helpers/
scripts/
models/
services/
views/
filters/
helpers/
scripts/
Bootstrap.php
PHP编程你可以扩展Zend_Application_Module_Bootstrap创建一个模块引导类 Bootstrap.php,具体的资源加载和默认的资源加载使用类似.
PHP编程更多关于zend相关内容感兴趣的读者可查看本站专题:《Zend FrameWork框架入门教程》、《php优秀开发框架总结》、《Yii框架入门及常用技巧总结》、《ThinkPHP入门教程》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
PHP编程希望本文所述对大家PHP程序设计有所赞助.
维易PHP培训学院每天发布《PHP实战:Zend Framework教程之Resource Autoloading用法实例》等实战技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培养人才。
转载请注明本页网址:
http://www.vephp.com/jiaocheng/7395.html