PHP學習筆記

2021-07-01 18:05:07 字數 2750 閱讀 8233

php的基本語法介紹

a.php可以和html**混合

a)1.一般用法

<?php

//php**

?>

2. <?php

//php**

?>

//一部分html**。

<?php

//php**

?>

b)script用法

c)如果只是為了顯示乙個變數

<?=$變數名?>

b.php**的注釋

注釋多行:/****xx*/

注釋單行://***xx

c.php的基本語法加強

parse:解析

error:錯誤

syntax:語法

1.php可以喝html混用

2.php的變數的定義使用

//php中,定義變數以$打頭。

$a = 890;。

3.php的變數的資料型別,是變化的。根據上下文變化。

4.變數區分大小寫

5.變數的名稱以字母,或者下劃線開頭d.類

1.建構函式

1.public function __construct(){}

2.public function 類名(){}

2.析構函式

1.function __destrusct(){}

3.靜態變數

1.在類中定義靜態變數:

[訪問修飾符] static $變數名:

2.訪問靜態變數

類內:self::$變數名

類名::$變數名

類外:類名::$變數名 

4.靜態方法

定義:static function 方法名(){}

注意,不能訪問非靜態成員

5.繼承

class 類名 entends 父類名{}

1.父類的public ,protected 的屬性和方法被繼承。private的屬性和方法沒繼承。

2.乙個類只能繼承乙個父類,若希望繼承多個類的屬性和方法,就使用多層繼承。

3.當建立子類物件時,預設情況下,不會自動呼叫父類的構造方法。

4.如果希望呼叫父類的方法,或者其他的方法。

類名::方法名。parent::方法名()

5.當子類方法和父類完全一樣時,則是方法的覆蓋。

6.過載

php5的過載是通過魔術函式來實現方法過載的效果。

__call:當乙個物件呼叫某個方法,而該方法不存在時,系統則會自動呼叫__call

例子:<?php

class a

public function test2($p)

function __call($method,$p)

else if(count($p)==2)}}

$a = new a();

$a->test(1,2); 

?>

__call函式的第乙個引數為想呼叫的函式名,第二個為引數個數。通過這兩個,來確定想要執行的函式。比如當函式名為test且引數為乙個的時候執行test1, 當函式名為test且引數為兩個的時候執行test2。使用的效果,就是過載。

7.方法覆蓋①問題

當乙個父類知道子類都有乙個方法,但無法確定實現方法。可以讓子類去覆蓋。

<?php 

class animal

}class pig extends animal

}class dog extends animal

}$a = new pig;

$a->cry();

?>

細節:1.

子類的方法名和引數列表個數要和父類一樣,引數名沒要求。

2.如果子類要去呼叫父類方法,parent::方法名或者父類名::方法名

3.實現覆蓋時候,訪問修飾符可以不同,但是子類範圍要大於父類

8.抽象類

為什麼需要抽象類:

實際開發中,有一種類是把其他的同一型別的類的共同點抽出來,作為他們的父類,本身不需要例項化。主要用途就是給別的類繼承,以達到**復用。比如汽車卡車抽象出來就是交通工具。

注意事項

1.基本用法:

abstract class 類名

2.如果乙個類的修飾符是abstract。那麼這個類就是抽象類,同樣,方法也是。如果是抽象方法,就不能寫方法體(實現)。

3.抽象類可以沒有抽象方法以及可以有實現了的方法

4.非抽象類不能有抽象方法。

5.非抽象類若繼承於抽象類,則必須實現抽象類中的全部抽象方法,或者自己成為乙個新的抽象類

9.介面類

1.介面的使用基本方法

inte***ce 介面名

介面的方法都不能有方法體。

實現介面

class 類名 implements 介面名1,介面2

介面的作用就是宣告一些方法,讓其他的類實現。

不能例項化乙個介面類。

介面中的屬性必須是常量,並且是public

介面的方法是public,不能是其他。

類和關係,一覽圖。

乙個介面可以繼承多個其他的介面。

乙個類實現了某個介面。必須實現其所有方法

10.final

1.如果我們希望某個類不被其他的類繼承。可以使用final

final class a

2.如果我們希望某個方法不能被子類改寫。可以使用final來修飾。

3.final關鍵字不能修飾屬性。

11.const

class a

使用 類名::常量名

12.綜合練習

PHP學習 PHP學習筆記 3

php 學習筆記 3 8 php 預定義常量 9 php 類 示例 var1 33 var2 44 if語句if var1 var2 echo if.else語句if var1 var2 else echo if.elseif.else語句if var1 var2 elseif var1 var2 ...

PHP學習筆記

globals是乙個儲存所有超級全域性變數的陣列,而global是乙個關鍵字,主要用在函式中宣告乙個變數為全域性變數,也可以使用 globals陣列來儲存全域性變數。變數的定義檢查 格式 isset var 取消變數定義 格式 unset var 數值轉換函式 chr 根據 var的值返回相對應的a...

php學習筆記

1 server script name server php self 和 server request uri 區別 例子 http localhost phpwind75 test.php 22 3e 3cscript 3ealert xss 3c script 3e 3cfoo server...