【问题标题】:Getting started with PHP / MVC [closed]PHP / MVC 入门 [关闭]
【发布时间】:2011-05-08 17:19:31
【问题描述】:

我已经使用 PHP 有一段时间了,了解了 OOPS、PDO 等的概念。我一直在慢慢地向更高级的 PHP 前进。我的策略始终是在每个项目中学习越来越多的高级编程。对于我当前的项目,我想实现 MVC,因为我之前一直在实现自己的目录或应用程序结构,这次我想将 MVC 用于我的应用程序。我确实通过了Nettuts 上的 MVC 样板教程。然而,这只是基本的,我正在为我寻找越来越多的资源来帮助我开始使用 MVC 进行我的项目。我相信你们可能从同一条路径经过我想知道有关互联网上可用的一些很棒的 PHP MVC 教程的链接和建议。

编辑:

在我要求不建议使用任何框架之前,我已经使用过像 cakephp 这样的框架。

谢谢

【问题讨论】:

  • 如果你需要框架,试试 laravel

标签: php model-view-controller


【解决方案1】:

我建议您查看 MVC 设计模式,以便在开始使用之前了解它。

理想情况下,你应该已经做了一些项目,因为你想在项目至少完成一半的时候改变一些东西。(这是背后的主要动力之一许多所谓的高级编程技术。易于修改、灵活性等)。

这就是你提到的东西(OO、MVC,我还要添加 TDD、设计模式)的用武之地)。

我为自己做的并建议其他人做的事情如下。查看您想要的任何内容,无论是 TDD、MVC 还是任何其他高级技术。但请等到您需要它们。

在我个人看来,当一个人经历了一个幼稚的项目并因缺乏这些技术提供的功能而苦恼时,会更好地理解 OO 和 MVC 的价值......

黄金法则是.. 只有在您了解新技术并看到它可以带来什么好处后才开始使用它。

我这么说是因为我在现实生活中看到很多人在使用 OO、MVC 甚至设计模式之类的东西时却不了解其背后的原因。我认为这根本没有帮助。

祝你好运。

【讨论】:

  • 滥用模式是你最终得到被广泛称为“php 框架”的可憎行为的方式..
  • 每个人都应该编写自己的 PHP 框架。但你永远不应该发布它。 ;)
  • 因为考虑因素——架构、安全、路由、抽象等——在概念和每个不同选项所带来的权衡方面都非常有价值。 但是它永远不应该被发布,因为它是一个实验、训练练习或编码高峰。此外,通过运行开源项目来运行内部项目所涉及的技能是根本不同的。
【解决方案2】:

我强烈建议您查看Kohana framework。它是一个 HMVC 框架,具有级联目录结构。如果您正在寻找有关高级主题的书籍,Matt Zandstra 的“PHP Objects, Patterns, and Practice”很好地描述了 PHP 中的设计模式。 《Pro PHP Patterns, Frameworks, Testing and More》也是一本很好的书,讨论了很多高级话题。

【讨论】:

  • “Pro PHP Patterns”是一本可怕的书:提倡使用全局状态并传播有关 MVC 模式的错误信息......然后是对 Zend 框架的颂歌。但是《PHP Objects, Patterns, and Practice》这本书乍一看还不错。
  • 我不认为这本书促进了全球状态,尽管没有劝阻它。事实上这本书并没有抓住这个话题。无论如何,它介绍了 spl、反射、Web 服务等主题。
【解决方案3】:

That tutorial 讨论实现自己的 MVC 框架。您可以使用现有的框架来实现使用 MVC 范例的应用程序。我碰巧更喜欢 Zend。下面是使用 Zend MVC 框架的教程:

http://framework.zend.com/manual/en/learning.quickstart.intro.html

【讨论】:

  • 我打算在后期使用 MVC 框架,因为目前我想坚持理解结构和代码
  • 学习MVC有两种方法:理论和应用。 MVC 理论是一个广泛的主题,并且有许多书籍可供您阅读。如果你对在 PHP 中应用 MVC 感兴趣,最好的方法是看看一些现有的开源项目是如何实现 MVC 的。
  • 是的,说得好,我最好在亚马逊搜索电子书。
【解决方案4】:

你可以尝试从易学易用的 Yii 入手: http://www.yiiframework.com/tour/

【讨论】:

    【解决方案5】:

    为了了解这个概念,我发现大量阅读内容以及从头开始实现它都会有所帮助。几个资源:

    图书资源:PHP In Action,MVC 上的页面。 (很好,因为提到了应用程序和 Web MVC 之间的区别)。

    理解概念:http://www.cs.cmu.edu/~pattis/15-1XX/15-200/lectures/modelinmvc/

    构建自己的教程:http://net.tutsplus.com/tutorials/php/create-your-first-tiny-mvc-boilerplate-with-php/

    构建您自己的教程,更复杂:http://www.nathandavison.com/posts/view/11/custom-php-mvc-tutorial-part-1-introduction

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-11-21
      • 2011-02-28
      • 2023-03-04
      • 2012-08-11
      • 2011-07-25
      • 2012-08-12
      • 2010-09-26
      • 2014-06-29
      相关资源
      最近更新 更多