php中的MVC,这是我提出的惯例


MVC in php, a convention that I came up

基本上,我开始以更mvc的方式工作,我有我的html,对象,执行代码,分成视图,模块,代码。

例如,如果我想创建一个注册表单,我创建一个名为registration的文件夹并放入三个文件:



——视图(包含html表格和表单)
——Module(包含一个验证输出并插入新用户的类)。
——Controller(执行模块文件中的类).


我的问题是我的工作方式称为MVC?另一个问题是php中的现有框架如何节省时间。Ruby on rails, zend框架…我对php有点陌生,我不确定是否值得换到其中一个?!?

不完全是,但接近了。

MVC代表模型-视图-控制器

  • 模型包含域逻辑。它们代表数据片段,并且可以处理持久化(例如,在数据库中存储/提取数据)

  • 视图包含表示(和表示逻辑)。有些人喜欢将两者分开,创建一个包含表示逻辑并保持视图简单的视图控制器

  • 控制器包含应用逻辑。它们通常将模型和视图绑定在一起,并且应该相当轻量级。大部分繁重的工作都由模型完成。

就框架而言,做你的研究。我不会向初学者推荐Zend Framework,但这只是我的观点。Ruby on Rails不是PHP。

框架很好,因为它们帮助"强迫"你组织起来,但不是一个万能的解决方案。有时候他们会碍事,有时候他们会让事情变得简单。

只是为了让你开始一个框架的心态,看看CodeIgniter。虽然我个人已经很长时间没有使用它了,但对于初学者来说,它是一个很好的框架。文档很棒,社区也很好。

试着通过powershell输入像"zf create controller controller_a"或"zf create project project1"这样的命令来创建你的模型视图和控制器,而不是键入所有这些废话。

你必须配置一个环境变量来运行powershell中的命令。

我发现框架非常强大。你喜欢什么,最终取决于你自己。

你的工作方式是MVC,但我认为它会节省你很多时间,切换到一个框架,从头开始设计与MVC在脑海中。学习曲线总是有点奇怪……一开始有点困难,但只要你是一名开发人员,就可以节省时间。如果是一个大项目,我建议Symfony2与Doctrine2.0