zoukankan      html  css  js  c++  java
  • 抽象类的简单应用

    简介:这是抽象类的简单应用的详细页面,介绍了和php,有关的知识、技巧、经验,和一些php源码等。

    class='pingjiaF' frameborder='0' src='http://biancheng.dnbcw.info/pingjia.php?id=349768' scrolling='no'>

    我想博客中的 文章列表和单个的文章阅读 统一起来,我觉得除了sql查询语句结构不同,HTML代码不同,其它也就一样。不过话说回来,这两个都是主要功能,所以这的确有点不适合,不过昨晚读了一点设计模式,好歹得写点啥好。

    All right, 父类postParent定义为抽象,规定子类必须重新实现 buildHTML()方法,这个方法并没有花括号,如果有不管有没有内容都会报错的。

    现在越看越觉得这代码完全没必要用抽象类,用继承也都很鸡肋,好吧,也没啥好说的好像。。。。。

    另外我把mysql 分开在外面了,所以调用方法很麻烦

     1,先实例化 readArticle 

     2,mysql查询,参数来自 readArticle::getSQL();

     3,返回mysql结果资源给 readArticle::fetchResult( $result );

     4,readArticle::buildHTML(); 返回HTML

    如果是列表循环输出的话,把 3 和 4 重复调用就可以了

    abstract class postParent
    {
    protected $querySQL;
    public $fetchResult;
    public $timeAgo; // eg : 2 days ago

    abstract protected function buildHTML();

    public function getSQL()
    {
    return $this->querySQL;
    }
    public function fetchResult( $result )
    {
    $this->fetchResult = mysql_fetch_assoc( $result );
    }
    public function error()
    {}
    }

    class readArticle extends postParent
    {
    public function __construct( $id )
    {
    $this->querySQL =<<<eof
    SELECT title, author, text, unixtime FROM post
    WHERE id = $id ORDER BY unixtime DESC;
    eof;

    }

    public function buildHTML()
    {
    return <<<eof
    <div id="post-text">
    <div class="post-title-div">
    <h4>
    <a href="http://foodstory.me/post.php?id={$this->fetchResult['id']}"
    class="post-title-a" > {$this->fetchResult['title']}
    </a>
    </h4>
    </div>
    <div class="post-info-div">
    <span class='post-info-author'>{$this->fetchResult['author']}</span> at
    <time class='post-info-time'>{$this->timeAgo}</time>
    </div>
    <div class="post-p-div">
    {$this->fetchResult['text']}
    </div>
    </div>
    eof;

    }

    }

      

    爱J2EE关注Java迈克尔杰克逊视频站JSON在线工具

    http://biancheng.dnbcw.info/php/349768.html pageNo:3
  • 相关阅读:
    为什么ip层收到的报文可能已经设置了路由
    由socket fd泄漏想到的一些问题
    Html.DropDownLis绑定数据库
    CSS 属性备注
    获取IP
    读取TXT并筛选数据写入新建TXT
    C#打印图片
    C#生成二维码
    NPOI操作Excel
    Bootstrap
  • 原文地址:https://www.cnblogs.com/ooooo/p/2238738.html
Copyright © 2011-2022 走看看