色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

我的php學習筆記(畢業(yè)設計)

php語法簡單,應用也非常好,而且類庫強大,確實能寫出很強大的服務器端。對于我這種只需要小功能服務器的人來說,再好不過了。
  單純的說學習php,我覺得還是看手冊的好。花了幾天時間看了看語法,因為有編程基礎,所以現(xiàn)在看起來就比較快了。剛用php寫完一個簡單的服務器,當然是有目的,準備用來支持一個訂票系統(tǒng)的客戶端。下面是我學習過程的筆記。以后也好有個回顧。
  當不存在某個類的對象時,可以通過作用域分辨符(::)來調(diào)用某個類中的方法;
  訪問基類中的方法時可以寫成 parent::method();
  serialize() 返回一個字符串,包含著可以儲存于 php 的任何值的字節(jié)流表示。
  unserialize() 可以用此字符串來重建原始的變量值。
  用序列化來保存對象可以保存對象中的所有變量。對象中的函數(shù)不會被保存,只有類的名稱。
  序列化與反序列化同一個對象時,可以采用包含同一對象的定義文件方法來實現(xiàn)。
  這是因為“new”默認并不返回引用,而返回一個拷貝。
  php5
  類與對象的特點:
  visibility:可見性
  屬性的訪問限度:public:任何地方都可以訪問到此屬性,
  protect派生類或者父類可以訪問到這個屬性,或者任何定義了這個屬性的類內(nèi)的某個項)
  private:只有類內(nèi)部才能訪問
  A member declared as static can not be accessed with
  an instantiated class object (though a static method can).
  Static members and methods cannot be re-defined in subclasses.
  (如果一個成員被定義為靜態(tài)的,那么該成員不能被實例化對象訪問,
  靜態(tài)成員不能在子類中被重新定義)。
  靜態(tài)定義必須在訪問屬性之后,如:protect static
  靜態(tài)方法可以不實例化調(diào)用,所以使用靜態(tài)方法時不能帶有$this參數(shù)。
  靜態(tài)成員不能用->來訪問。
  constant:常量關(guān)鍵字, const 用于定義 不可改變的常量,定義時不需要使用$符號。
  定義方法一般為:const aconstant = 'constant';
  php中g(shù)loabl定義的變量是在整個頁面中使用的,包括require包含的頁面和include包含的頁面。
  抽象類:
  抽象類不能實例化,任何帶有抽象方法的類必須定義為抽象類。
  繼承抽象類的話,任何在抽象類中的抽象方法都必須重寫實現(xiàn)。這些方法的訪問限度只能
  和抽象父類的方法的訪問限度相同或更低。
  抽象類和抽象方法都使用 abstract作為關(guān)鍵字。
  對象接口(object interface)
  對象接口允許你規(guī)定哪些方法必須實現(xiàn),而不是讓你定義哪些方法怎么被捕捉。
  對象接口使用 interface 關(guān)鍵字來定義。它是一個標準的類,但是它的任何方法都沒有被實現(xiàn)。
  任何在接口對象中的方法都必須是公有的,這是接口對象必須遵循的。
  實現(xiàn)一個接口必須使用implements標示,所以接口方法實現(xiàn)必須在一個類里面。一個類可以實現(xiàn)多個接口。
  重載:
  迭代器:
  迭代器可以訪問類里面所有的公有對象成員。
  實現(xiàn)php5里面的迭代器接口,這樣可以允許你定義,對象怎么被迭代訪問。
  設計模式:
  設計模式提供了一個良好的框架來實現(xiàn)一些功能組織。
  工廠模式:在運行過程中實例化一個要求的對象。
  單利模式:最明顯的一個例子就是:數(shù)據(jù)庫連接對象。下面是一個最好的單例模式范例:
  Singleton Function
復制代碼 代碼如下:
  <?php
  class Example
  {
  // Hold an instance of the class
  private static $instance;
  // A private constructor; prevents direct creation of object
  private function __construct()
  {
  echo 'I am constructed';
  }
  // The singleton method
  public static function singleton()
  {
  if (!isset(self::$instance)) {
  $c = __CLASS__;
  self::$instance = new $c;
  }
  return self::$instance;
  }
  // Example method
  public function bark()
  {
  echo 'Woof!';
  }
  // Prevent users to clone the instance
  public function __clone()
  {
  trigger_error('Clone is not allowed.', E_USER_ERROR);
  }
  }

  你還可以實現(xiàn)php5里面的iteratoraggregate接口對象來定義自己的迭代方法。
  魔術(shù)函數(shù):
  The function names __construct, __destruct (see Constructors and Destructors),
  __call, __get, __set, __isset, __unset (see Overloading), __sleep, __wakeup,
  __toString, __clone and __autoload are magical in php classes.
  這些函數(shù)在存在于每一個php類中。你不要隨意使用__來定義函數(shù),除非你真的想這個函數(shù)具有魔術(shù)功能。
  __tostring()函數(shù),這個函數(shù)將決定一個對象轉(zhuǎn)換為字符的時候?qū)l(fā)生的事。
  final關(guān)鍵字:
  final關(guān)鍵字用來阻止應用final關(guān)鍵字聲明的類或者方法被繼承,被覆蓋。
  參數(shù)類型強制:
  可以在參數(shù)前面加上類名類控制傳入的參數(shù)類型。
  require() 和 include() 除了怎樣處理失敗之外在各方面都完全一樣。
  include() 產(chǎn)生一個警告而 require() 則導致一個致命錯誤。
  換句話說,如果想在丟失文件時停止處理頁面,那就別猶豫了,用 require() 吧。
  require_once() 語句在腳本執(zhí)行期間包含并運行指定文件。
  此行為和 require() 語句類似,
  唯一區(qū)別是如果該文件中的代碼已經(jīng)被包含了,
  則不會再次包含。有關(guān)此語句怎樣工作參見 require() 的文檔。
  php 有一個類型運算符:instanceof。instanceof 用來測定一個給定的對象是否來自指定的對象類。
  代碼范例:
復制代碼 代碼如下:
<?php
  class A { }
  class B { }
  $thing = new A;
  if ($thing instanceof A) {
  echo 'A';
  }
  if ($thing instanceof B) {
  echo 'B';
  }
  ?>

  的 php 代碼段結(jié)束標記可以不要,有些情況下當使用輸出緩沖和
  include() 或者 require() 時省略掉會更好些。
  include() 就不是這樣,腳本會繼續(xù)運行。同時也要確認設置了合適的include_path。
  __CLASS__ :指的是當前類。
  異常處理,根據(jù)需要擴展異常處理類exception
  require()語句包含并運行指定文件;

php技術(shù)我的php學習筆記(畢業(yè)設計),轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 钟祥市| 淄博市| 礼泉县| 白水县| 常山县| 手机| 南华县| 公主岭市| 泰顺县| 泰兴市| 中牟县| 尉氏县| 齐齐哈尔市| 无棣县| 周宁县| 辽中县| 岑溪市| 密云县| 利辛县| 阿合奇县| 万山特区| 沂水县| 林周县| 临高县| 墨竹工卡县| 惠东县| 钟山县| 剑河县| 电白县| 当涂县| 昆山市| 东海县| 潞城市| 河南省| 苏尼特左旗| 密山市| 长丰县| 伽师县| 高尔夫| 闻喜县| 崇明县|