gpt4 book ai didi

php - 深入了解 PHP 中的基本 OOP

转载 作者:搜寻专家 更新时间:2023-10-31 20:51:44 24 4
gpt4 key购买 nike

我是一名经验丰富的程序员并且经常使用 OOP,因此我对这个概念非常熟悉。我在网络开发方面也很有经验。我不熟悉的是他们是如何走到一起的。例如,假设我正在编写一些论坛软件。我创建了一个类来处理和表示用户的“帖子”。我将创建从数据库加载它的方法、将它显示在屏幕上以供阅读的方法,以及允许用户编辑内容的方法。

这就是我的困惑所在。我将指示 Post 对象从数据库加载内容,然后将其显示在表单中供用户编辑。表单将在哪里提交信息?如果服务器上不再存在信息,如何将信息发送回 Post 对象?我是否必须重新创建 post 对象,向其提供表单数据,然后执行更新方法?有没有什么方法可以使对象在服务器上持久化直到不再需要它们?

如果我的问题没有多大意义,我深表歉意。如果我知道要问什么,Google 应该已经回答了我的问题。

最佳答案

为了解决这个问题,有一个流行的 pattern in OOP这就是所谓的 MVC( Model View Controller )。阅读一些理论知识并阅读周围的一些实现。


This is where my confusion comes it. I'll instruct the Post object to load the content from the database then display it in a form for the user to edit. Where will the form submit its information?

通过 HTTP 到您的网络服务器。

How do I send the information back to the Post object if it no longer exists on the server?

对于持久性存储,这通常是一个数据库。

Do I have to recreate the post object, feed it the form data, then execute the update method?

是的,因为 HTTP 请求的无状态性质将您的应用程序作为顶级请求发出命令。

Is there some way to make objects persistent on the server until they're no longer needed?

当然。有一些对象“冰箱”可以让您持久地存储对象,如果您不再需要它们,您可以将它们从冰箱中取出。


可提供 MVC 的 PHP 框架是 symfony2。它在本文中对 MVC 的工作原理做了一些解释:Symfony2 versus Flat PHP这很好地解释了 MVC 如何与任何基于 HTTP 的 PHP 脚本/应用程序一起工作。

sourcecode is located on github如果您更喜欢阅读代码。

关于php - 深入了解 PHP 中的基本 OOP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6747476/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com