Thiết kế class - Xây dựng class có tên page

Thứ ba, 25/11/2014 4:05 PM
 

Để tiếp tục với phần class mời các bạn tham khảo ví dụ dưới đây, xây dựng tất cả các class cần dùng, sau đó sử dụng class đó trong PHP.

Ví dụ: Xây dựng class có tên class

<?php
class Page
{

 // Khai báo thuộc tính của page 

  var $content;
  var $title = "Saigon Infotech Pty Ltd";
  var $keywords = "Saigon Infotech, Three Letter Abbreviation, 
                   some of my best friends are search engines";
  var $buttons = array( "Home"     => "home.php", 
                        "Contact"  => "contact.php", 
                        "Services" => "services.php", 
                        "Site Map" => "map.php"
                      );

// Khai báo các phương thức của page

  function SetContent($newcontent)
  {
    $this->content = $newcontent;
  }

  function SetTitle($newtitle)
  {
    $this->title = $newtitle;
  }

  function SetKeywords($newkeywords)
  {
    $this->keywords = $newkeywords;
  }

  function SetButtons($newbuttons)
  {
    $this->buttons = $newbuttons;
  }

  function Display()
  {
    echo "<html>\n<head>\n";
    $this -> DisplayTitle();
    $this -> DisplayKeywords();
    $this -> DisplayStyles();
    echo "</head>\n<body>\n";
    $this -> DisplayHeader();
    $this -> DisplayMenu($this->buttons);
    echo $this->content;
    $this -> DisplayFooter();
    echo "</body>\n</html>\n";
  }

  function DisplayTitle()
  {
    echo "<title> $this->title </title>";
  }

  function DisplayKeywords()
  {
    echo "<META name=\"keywords\" content=\"$this->keywords\">";
  }

  function DisplayStyles()
  { 
?>   
  <style>
    h1 {color:white; font-size:24pt; text-align:center; 
        font-family:arial,sans-serif}
    .menu {color:white; font-size:12pt; text-align:center; 
           font-family:arial,sans-serif; font-weight:bold}
    td {background:black}
    p {color:black; font-size:12pt; text-align:justify; 
       font-family:arial,sans-serif}
    p.foot {color:white; font-size:9pt; text-align:center; 
            font-family:arial,sans-serif; font-weight:bold}
    a:link,a:visited,a:active {color:white}
  </style>
<?
  }

  function DisplayHeader()
  { 
?>   
  <table width="100%" cellpadding = 12 cellspacing =0 border = 0>
  <tr bgcolor = black>
    <td align = left></td>
    <td>
        <h1>Saigon Infotech Pty Ltd</h1>
    </td>
    <td align = right></td>
  </tr>
  </table>
<?
  }

  function DisplayMenu($buttons)
  {
    echo "<table width = \"100%\" bgcolor = white cellpadding = 4 cellspacing = 4>\n";
    echo "  <tr>\n";

    //calculate button size
    $width = 100/count($buttons);

    while (list($name, $url) = each($buttons))
    {
      $this -> DisplayButton($width, $name, $url, !$this->IsURLCurrentPage($url));
    }
    echo "  </tr>\n";
    echo "</table>\n";
  }

  function IsURLCurrentPage($url)
  {
    if(strpos( $GLOBALS["SCRIPT_NAME"], $url )==false)
    {
      return false;
    }
    else
    {
      return true;
    }
  }

  function DisplayButton($width, $name, $url, $active = true)
  {
    if ($active)
    {
      echo "<td width = \"$width%\">
            <a href = \"$url\">
            <img src = \"s-logo.gif\" alt = \"$name\" border = 0></a>
            <a href = \"$url\"><span class=menu>$name</span></a></td>";
    }  
    else
    {
      echo "<td width = \"$width%\">
            <img src = \"side-logo.gif\">
            <span class=menu>$name</span></td>";
    }  
  }

  function DisplayFooter()
  {
?>
    <table width = "100%" bgcolor = black cellpadding = 12 border = 0>
    <tr>
      <td>
        <p class=foot>&copy; Saigon Infotech Pte Ltd.</p>
        <p class=foot>Please see our 
                      <a href ="http://www.saigoninfotech.net">legal information page</a></p>
      </td>
    </tr>
    </table>
<?
  }
}
?>

 

Bài viết cùng chuyên mục: "Lập trình php"

Liên hệ