PHP的范圍解析操作符

時間:2024-09-13 15:12:14 PHP 我要投稿
  • 相關推薦

PHP的范圍解析操作符

  今天看到幾個有關PHP的符號。一個是@,這個加在一個變量的前面,是為了抑制PHP解釋器報錯,也就是說即使出了錯也不會顯示出來。

  還有一個更重要的符號PHP的范圍解析操作符(::)

  在沒有聲明任何實例的情況下訪問類中的函數或者基類中的函數和變量很有用處。而 :: 運算符即用于此情況。

  復制代碼 代碼如下:

  <?php

  class A {

  function example() {

  echo "I am the original function A::example().

  n";

  }

  }

  class B extends A {

  function example() {

  echo "I am the redefined function B::example().

  n";

  A::example();

  }

  }

  // A 類沒有對象,這將輸出

  // I am the original function A::example().

  A::example();

  // 建立一個 B 類的對象

  $b = new B;

  // 這將輸出

  // I am the redefined function B::example().

  // I am the original function A::example().

  $b->example();

  ?>

  上面的例子調用了 A 類的函數 example(),但是這里并不存在 A 類的對象,因此不能這樣用 $a->example() 或者類似的方法調用 example()。反而我們將 example() 作為一個類函數來調用,也就是說,作為一個類自身的函數來調用,而不是這個類的任何對象。

  這里有類函數,但沒有類的變量。實際上,在調用函數時完全沒有任何對象。因而一個類的函數可以不使用任何對象(但可以使用局部或者全局變量),并且可以根本不使用 $this 變量。

  上面的例子中,類 B 重新定義了函數 example()。A 類中原始定義的函數 example() 將被屏蔽并且不再生效,除非使用 :: 運算符來訪問 A 類中的 example() 函數。如:A::example()(實際上,應該寫為 parent::example(),下一章介紹該內容)。

  就此而論,對于當前對象,它可能有對象變量。因此可以在對象函數的內部使用 $this 和對象變量。

【PHP的范圍解析操作符】相關文章:

php解析ini配置文件07-13

解析項目管理之范圍管理08-22

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

PHP的壓縮函數06-21

php高級教程01-23

如何學好PHP知識09-20

 PHP的基礎編程與應用10-16

淺析php函數的實例06-08

配置 PHP 調試環境07-20

PHP的錯誤機制總結09-09

亚洲制服丝袜二区欧美精品,亚洲精品无码视频乱码,日韩av无码一区二区,国产人妖视频一区二区
日本视频观看无卡免费精品页码 | 亚洲成在人线在线播放器 | 污网站在线观看视频 | 亚洲福利在线看国产精品 | 亚洲精品五级在线 | 亚洲一区AV在线播放 |