<dfn id="w48us"></dfn><ul id="w48us"></ul>
  • <ul id="w48us"></ul>
  • <del id="w48us"></del>
    <ul id="w48us"></ul>
  • PHP類的使用實例講解

    時間:2024-07-28 11:51:49 PHP 我要投稿
    • 相關推薦

    PHP類的使用實例講解

      PHP 只有類別 (class)、方法 (method)、屬性、以及單一繼承 (extensions) 等。對不習慣使用 C++、Java、Delphi 等面向對象語言來開發程序的用戶,不妨先閱讀一下有關面向對象概念的書,相信可以帶來許多的收獲。

      下面的范例是手推車睦唷?梢鑰吹劍使用 class 表示它是一個類類別。在類別中的 function,例如 add_item 則表示該類的一個方法。方法可以封裝類的實際處理情形,讓該類自己能依封裝好的方法來執行一些步驟。

      程序中的 $this 類變量也和 $GLOBALS 及 $php_errormsg 兩個變量一樣,在 PHP 中屬于特殊的變量。$this 變量只用在類類別中,表示類的本身。

      復制代碼 代碼如下:

      <?php

      // 程序名: cart.inc

      class Cart {

      var $items; // 手推車類

      // 本方法加入 $num 件物品到手推車中 (加到 $artnr 變量)

      function add_item ($artnr, $num) {

      $this->items[$artnr] += $num;

      }

      // 本方法從手推車減少 $num 件物品 (從 $artnr 變量減掉)

      function remove_item ($artnr, $num) {

      if ($this->items[$artnr] > $num) {

      $this->items[$artnr] -= $num;

      return true;

      } else {

      return false;

      }

      }

      }

      ?>

      要使用手推車可以用類似下例的方式?梢韵葘⒚總類存成 Include 文件,再將它 require 或 include 進來。在定義變量 $cart 時,要使用 new 的保留字,表示 $cart 使用 Cart 類。使用 -> 符號,表示執行類的方法。

      復制代碼 代碼如下:

      <?php

      require("cart.inc");

      $cart = new Cart;

      $cart->add_item("10", 1);

      ?>

      之后再設計有記名的手推車。記名手推車從手推車遺傳下來,因此手推車擁有的方法及屬性,記名手推車也有,而記名手推車比手推車增加了名字的方法 (或許該稱屬性較恰當)。

      從下例中可以看到,子類 Named_Cart 使用 extends 來繼承其父類 Cart。雖然 Named_Cart 類中沒有增加物品及減少物品的方法,不過由于遺傳的特性,父類有的東西它都有。

      復制代碼 代碼如下:

      <?php

      // 程序名: named_cart.inc

      require("cart.inc");

      class Named_Cart extends Cart {

      var $owner;

      function set_owner ($name) {

      $this->owner = $name;

      }

      }

      ?>

      要使用記名手推車類,請看下面的范例。當然這不算太好的設計,每個子類都一直 require 它的父類,會造成服務器在 I/O 上面的負擔。在實作時,可以將整個系列的類在同一個程序文件中,從最早的袓先類到最后的子孫類,也方便日后修正。

      復制代碼 代碼如下:

      <?php

      require("named_cart.inc");

      $ncart = new Named_Cart; // 建立類變量

      $ncart->set_owner ("CyberRidder"); // 配置類的記名屬性

      echo $ncart->owner; // 顯示類的記名屬性

      $ncart->add_item ("10", 1); // 從父類遺傳的方法也可使用

      ?>

      因此,在 PHP 中使用了 extends 保留字,加上良好的系統分析與完整的 CRC 卡片 (詳見面向對象相關書籍) 設計之后,PHP 可變成擁有強大類能力的 CGI 語言。

      PHP 由于是腳本語言 (Script),因此程序源代碼可見,在軟件工程中的元件黑箱并不會在目前的 PHP 版本中出現,也就是說,全部的類其實沒有隱藏起它的內容。對于軟件業者而言,沒有辦法保護所謂的軟件 IC,站在開放團體而言,反而有源代碼是件好事,至于孰是孰非,就很難判定了,不過目前 PHP 還是 Open Source 團體的一份子,或許日后 Zend 引擎可以做到類封裝的功能也不一定。

    【PHP類的使用實例講解】相關文章:

    PHP中curl的使用實例07-31

    淺析php函數的實例06-08

    PHP對象注入的實例分析08-27

    實例講解托福閱讀推斷題技巧06-20

    PHP中函數的使用說明09-01

    PHP中關于類的定義10-02

    php在新浪云中使用imagick的方法07-14

    php中static靜態變量的使用方法06-11

    關于php面試寶典及PHP面試技巧08-16

    如何使用PHP構建一個高性能的彈幕后端服務01-22

    主站蜘蛛池模板: 真实国产乱子伦精品免费| 中文字幕无码精品亚洲资源网久久| 久久精品人人做人人妻人人玩| 久久亚洲精精品中文字幕| 久久Av无码精品人妻系列| 精品不卡一区二区| 欧美精品一区二区三区视频| 国产精品无码久久四虎| 亚洲热线99精品视频| 国产精品国产三级国产普通话| 精品三级在线观看| 国产A级毛片久久久精品毛片| 色婷婷噜噜久久国产精品12p| 日本VA欧美VA欧美VA精品| 久久精品一区二区国产| 日批日出水久久亚洲精品tv | 911亚洲精品不卡| 久久久久人妻精品一区三寸蜜桃 | 老司机69精品成免费视频| 久久精品无码一区二区app| 国语精品一区二区三区| 国产亚洲曝欧美不卡精品| 国产日韩精品欧美一区喷水| 国产精品最新国产精品第十页| 少妇人妻偷人精品视频| 97精品国产自在现线免费观看| 亚洲精品无码午夜福利中文字幕 | 无码欧精品亚洲日韩一区| 一级成人精品h| 久久久久人妻一区精品性色av| 国产精品无码v在线观看| 国产99视频精品免费专区| 日本精品一区二区三区四区| 精品无人区麻豆乱码1区2区| 无码国内精品久久人妻麻豆按摩| 国产精品莉莉欧美自在线线| 亚洲一日韩欧美中文字幕欧美日韩在线精品一区二 | 丰满人妻熟妇乱又仑精品| 久久99精品久久久久久不卡| 国产成人精品日本亚洲专| 亚洲精品无码AV中文字幕电影网站|