加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 扩展/修改Zend Framework有多容易?

发布时间:2020-12-13 22:00:00 所属栏目:PHP教程 来源:网络整理
导读:我最近开始构建我一年的自定义MVC框架的第2版.在许多项目中,它对我很有用,但我确实看到了改进的空间.它缺少一些主要功能,如ACL,表单验证和缓存.尽管我自己喜欢自己构建这些部件,但实际上我知道这不是一个明智的决定.所以,我开始研究Zend Framework 1.9.我真
我最近开始构建我一年的自定义MVC框架的第2版.在许多项目中,它对我很有用,但我确实看到了改进的空间.它缺少一些主要功能,如ACL,表单验证和缓存.尽管我自己喜欢自己构建这些部件,但实际上我知道这不是一个明智的决定.所以,我开始研究Zend Framework 1.9.我真的很喜欢它的组件库松散耦合.但是,通过查看不同的教程,它看起来非常冗长.我已经看到了一些示例应用程序,我可以用我自己的框架使用更少的代码复制.因此,我想“重新定义”它的大部分内容,以使其更加友好.因此,在我花费大量时间深入研究框架之前,我希望有人可以为我阐明这个主题.我是一个内心的编码员,如果它有一个坚实的基础(我希望ZF有),可以花几个小时调整和定制一些东西.

我应该注意到,我很高兴看到Doctrine可以与ZF集成.

如果ZF不容易扩展,那么其他框架是什么(还有ACL,表单验证,缓存)?我一直在看Symfony,但整个Configuration over Convention事情让我很烦恼.

提前感谢任何输入.

编辑
要回答tharkun的问题,我的意思是’易于扩展’是我可以滚动自己的类(可能会或可能不会扩展ZF类)并将它们打包到框架中,以便我可以轻松地为自己构建代码的基础项目.

解决方法

在流行的 PHP框架中,ZF肯定是最容易扩展的框架,特别是因为松耦合.

谢谢你的澄清.

你所描述的正是ZF所擅长的,但我会说它也正是OOP所擅长的,所以我认为OO框架不支持垃圾箱的情况.

无论如何.使用ZF时,通常以将自己的库保存在与ZF文件夹结构并行的结构中的方式完成.您可以使用ZF自动装载器,并通过将库文件夹添加到命名空间来将其注册到自动装带器.例:

//this will be the only require needed for your whole application
require_once 'Zend/Loader/Autoloader.php';
$loader = Zend_Loader_Autoloader::getInstance();
$loader->registerNamespace('Mylibrary_');

在Mylibrary中,您应该遵循ZF命名约定.假设您要扩展Zend_Db_Table_Abstract类.该类逻辑上位于Zend / Db / Table / Abstract.php下.您的库现在应该复制该结构:Mylibrary / Db / Table / Abstract.php.你会在那个文件中命名你的类:

class Myproject_Db_Table_Abstract extends Zend_Db_Table_Abstract
{
    /*
    now you're ready to extend and override as much as you like.
    and as a bonus you'll not even hav to include your library files 
    since your library is registered with the loader
    */
}

在提出这个问题时,你有什么想法吗?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读