一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - PHP教程 - PHP 面向對象程序設計之類屬性與類常量實現方法分析

PHP 面向對象程序設計之類屬性與類常量實現方法分析

2020-05-27 12:14Ryan_zheng PHP教程

這篇文章主要介紹了PHP 面向對象程序設計之類屬性與類常量實現方法,結合實例形式分析了PHP 面向對象程序設計中類屬性與類常量的具體功能、原理、實現方法與操作注意事項,需要的朋友可以參考下

本文實例講述了PHP 面向對象程序設計之類屬性與類常量。分享給大家供大家參考,具體如下:

屬性 (Properties)

類的變量成員叫做“屬性”,或者叫“字段”、“特征”,在本文檔統一稱為“屬性”。屬性聲明是由關鍵字 public,protected或者 private 開頭,然后跟一個普通的變量聲明來組成。屬性中的變量可以初始化,但是初始化的值必須是常數,這里的常數是指 PHP 腳本在編譯階段時就可以得到其值,而不依賴于運行時的信息才能求值。

有關 public,protected 和 private 的更多詳細信息,請查看訪問控制(可見性)

Note:

為了向后兼容 PHP 4,PHP 5 聲明屬性依然可以直接使用關鍵字 var 來替代(或者附加于)public,protected 或private。但是已不再需要 var 了。在 PHP 5.0 到 5.1.3,var 會被認為是廢棄的,而且拋出 E_STRICT 警告,但是 5.1.3 之后就不再認為是廢棄,也不會拋出警告。

如果直接使用 var 聲明屬性,而沒有用 public,protected 或 private 之一,PHP 5 會將其視為 public。

在類的成員方法里面,可以用 ->(對象運算符):$this->property(其中 property 是該屬性名)這種方式來訪問非靜態屬性。靜態屬性則是用 ::(雙冒號):self::$property 來訪問。更多靜態屬性與非靜態屬性的區別參見 Static 關鍵字

當一個方法在類定義內部被調用時,有一個可用的偽變量 $this。$this 是一個到主叫對象的引用(通常是該方法所從屬的對象,但如果是從第二個對象靜態調用時也可能是另一個對象)。

屬性聲明以及調用

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<?php
class SimpleClass
{
  // 錯誤的屬性聲明
  public $var1 = 'hello ' . 'world';
  public $var2 = <<<EOD
hello world
EOD;
  public $var3 = 1+2;
  public $var4 = self::myStaticMethod();
  public $var5 = $myVar;
 
  // 正確的屬性聲明
  public $var6 = myConstant;
  public $var7 = array(true, false);
 
  //在 PHP 5.3.0 及之后,下面的聲明也正確
  public $var8 = <<<'EOD'
hello world
EOD;
  // 屬性調用
  public getvar1() {
    echo $this->var1;
  }
}
 
$simpleObject = new $SimpleClass();
// 對象調用屬性
echo $simpleObject->var1;  // 輸出 "hello world"

類常量 (Class Constants)

可以把在類中始終保持不變的值定義為常量。在定義和使用常量的時候不需要使用 $ 符號。

常量的值必須是一個定值,不能是變量,類屬性,數學運算的結果或函數調用。

接口(interface)中也可以定義常量。更多示例見文檔中的接口部分。

自 PHP 5.3.0 起,可以用一個變量來動態調用類。但該變量的值不能為關鍵字(如 self,parent 或 static)。

定義和使用一個類常量

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
class MyClass
{
  const constant = 'constant value';
 
  function showConstant() {
    echo self::constant . "\n";
  }
}
 
echo MyClass::constant . "\n";
 
$classname = "MyClass";
echo $classname::constant . "\n"; // 自 5.3.0 起
 
$class = new MyClass();
$class->showConstant();
 
echo $class::constant."\n"; // 自 PHP 5.3.0 起

希望本文所述對大家PHP程序設計有所幫助。

原文鏈接:https://www.cnblogs.com/ryanzheng/p/11404814.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 精品无人区麻豆乱码无限制 | 国产一级在线免费观看 | 亚洲精品视频观看 | 香蕉 在线播放 | 97热在线| 小早川怜子息梦精在线播放 | 99色亚洲 | 精品综合久久久久久8888 | 秋霞午夜| 亚洲日日做天天做日日谢 | 国产精品嫩草影院一二三区入口 | 91精品国产免费久久 | 武侠艳妇屈辱的张开双腿 | 青视频在线 | 2019年国产不卡在线刷新 | 男同桌脱我奶罩吸我奶作文 | 日本十大顶级绝伦推理片 | 青草香蕉精品视频在线观看 | 嗯啊好爽视频 | 王王的视频ivk | 国产一级毛片国语版 | 97热在线 | gay台湾无套男同志可播放 | 欧美特黄特色aaa大片免费看 | 精品四虎国产在免费观看 | 欧美一卡二卡科技有限公司 | 国产欧美二区三区 | 亚洲日本视频在线 | 午夜爱爱片 | 国内交换一区二区三区 | 女人和男人搞基 | 亚洲女性色尼古综合网 | 亚洲天堂免费观看 | 丝袜兔女郎被啪在线观看91 | 四虎影院在线 | 91在线一区二区三区 | 亚洲毛片网 | 国产码一区二区三区 | 日本精工厂网址 | 韩剧hd| 免费精品国产在线观看 |