我应该在哪里写php oop中的html代码

时间:2017-01-21 15:06:42

标签: php oop

我有一个(有)关系。 Article类有一个Writer类。 我无法弄清楚的一件事是HTML代码应该写在哪里?

假设我们想要在以下块中显示结果:

<div id="article_block">
  <h1>Article Title</h1>
  <p>Article content</p>
  <div id="writer_block"> writer name: <a href="writer_id"> Writer Name </a> </div>
</div>

我应该在Writer类中创建#writer_block并在Article类中创建#article_block,并将它们混合在Article类中?我应该怎么做,请帮助,我搜索了很多,但没有提到。 如果我的观点有问题,请不要告诉我“不要重新发明轮子”。我没有尝试这样做,我只是不知道方式,因为我是OOP的新人。

1 个答案:

答案 0 :(得分:0)

一般而言,面向对象编程的想法是将您的问题分解为自包含的实体(对象),然后您可以将这些实体组合成最终的解决方案。鉴于Article有一个Writer,听起来你需要两个类,每个类一个。

首先使用Article类进行处理,我想它应该有一个输出你的html的方法,让我们调用它output()。在此方法中,您包含用于输出HTML的代码,因此调用Article->output()应返回您需要的HTML,但您可以在此方法中嵌套对Writer.output()的调用,该调用应执行相同的功能但特定于Writer课程。在伪代码Article.output()中应该:

  1. 将HTML的第一部分输出到您希望编写者详细信息的位置。
  2. 致电Writer.output()
  3. 输出结束标记以及您需要的任何其他内容。
  4. Writer类基本上应该做同样的事情,你只需要为它输出不同的HTML。

    通过编写Entity类作为ArticleWriter继承的抽象基础,您可以让自己的生活更轻松,然后您只需覆盖{{1派生类中的方法可以获得所需的行为。

    cale_b是正确的,如果您的系统需要,将您的程序分解为模型/视图/控制器类型体系结构或模型/视图/展示器体系结构将使您的生活更加轻松成长。