PHP 類的封裝和使用

2022-06-27 22:21:14 字數 3343 閱讀 9153

**:

類:相似的資料和資料操作的封裝  class

例項化:類建立特例的過程(例項化乙個物件 new)

物件: 類的特例或者例項   object

認識類 -> 類的封裝 -> 類的例項化 -> 物件的認識 -> 操作物件

類的使用步驟:

1)建立類  class

語法格式:

class 類名 空類,空函式麼有意義,空類是為了專案後期擴充套件預留的介面

例項化類(instance):

物件變數 = new 類名;

或者  物件變數 = new 類名();

物件變數:  普通的變數,只不過他的型別是物件型別

$object = new myclass;/new myclass();
類的使用

is_object():判斷某個變數是否是物件;

instanceof:判斷物件是否是某個類的例項化

<?php 

// 類使用步驟

class myclass

$obj = new myclass;

if(class_exists("myclass"))else

?>

物件的例項化過程中,類名不區分大小寫,後面可以有小括號也可省略,但是一定要注意,宣告類的時候是沒有小括號的(區別於函式)

成員變數:

普通的變數放入到類中就變成了成員量(類的屬性)

格式:修飾符 變數名[=值];

變數定義格式:

修飾符 變數;

變數的賦值

修飾符 變數名 = 值;

修飾符:  public : 公有的,在類內可以使用,在類外也可以使用,等價於 js 的 var

public $height = 100;
類外的使用:

1) 物件名 -> 變數名(無$)

類內呼叫

2) $this -> 變數名(無$) 偽變數

$this :物件本身

3) 對於某個物件的操作,對於另外的物件沒有任何影響,也就是所謂的物件無關性

成員方法:

普通的函式放入到的類中就變成了成員方法

格式:修飾符 function 方法名(引數)

$obj = new myclass;

echo $obj -> age ; // 100

$obj -> age = 105; // 105

echo $obj -> age;

// 物件操作的無關性

$obj1 = new myclass;

echo $obj1 -> age; // 100

$obj1 -> age = 200;

echo $obj1 -> age; // 200

echo $obj -> age; // 105

?>

類外使用:

物件 -> 方法名(實參列表);

類內使用

$this -> 方法名(實參列表);

$this:

偽變數代表的是當前操作該類的物件。

類內使用成員變數和成員方法:

$this -> 變數名(無$)

$this -> 方法名(引數);

<?php 

class usermodel

// 使用者進行登入操作

public function login($tmp_u,$tmp_p)

}// 判斷使用者是否登入

public function checklogin()

} $obj = new usermodel;

$obj -> setuserpwd("admin","123456");

if($obj -> checklogin())

echo "login ok";

else

echo "login error";

?>

類常量:

類中恆定不變的量

格式:const 大寫的常量名 = 值;

eg:const host = 「localhost」;

類外呼叫:

類名 :: 常量名

類內的呼叫: self (指本類)

self::常量名

note:  

1、::叫做作用域操作符

2、常量在宣告的時候必須賦值!

3、宣告常量的過程中,不需要其他的修飾符

<?php 

class myclass

}echo myclass::host.myclass::user;

$obj = new myclass;

echo "";

$obj -> show();

?>

類的封裝:

資料庫操作類

1、定義類名和類功能

2、類名:mysql

3、功能:程式語言操作mysql資料庫

分析成員量:

1、伺服器名: $host

2、資料庫名: $dbname

3、使用者名稱:   $user

4、密碼:     $pwd

5、鏈結編碼: $code = 「utf8」

6、資料庫鏈結  $link

7、資料庫返回的二維陣列  $data = array();

8、記錄集 $result

分析方法:

1、新增

2、刪除

3、修改

4、查詢

5、資料庫鏈結   _connect()

6、編碼設定

7、將記錄集轉換為二維陣列

8、將記錄集中的第一條轉換為一維陣列。

<?php 

//功能:資料庫操作類

class mysqlelse

}else

}else

}// 設定編碼

public function setcode($code = "")

}$db = new mysql;

if($db -> _connect()) echo "connect ok";

else echo "connect error";

echo mysql_error();

?>

PHP 類的封裝和使用

類 相似的資料和資料操作的封裝 class 例項化 類建立特例的過程 例項化乙個物件 new 物件 類的特例或者例項 object 認識類 類的封裝 類的例項化 物件的認識 操作物件 類的使用步驟 1 建立類 class 語法格式 class 類名 空類,空函式麼有意義,空類是為了專案後期擴充套件預...

類和類的封裝

在日常生活中,我們總是將事物進行分門別類。列如 電腦,手機,相機等等,這些稱呼都是對於某一類事物的總稱。我們還能將電腦按照品牌分類,比如,戴爾電腦 惠普電腦 蘋果電腦 華碩電腦等。這些都是抽象的概念。我的電腦這個實體,它就是乙個具體的事物,我的電腦是戴爾的,但我不能說戴爾電腦是我的電腦。類和物件是面...

PHP封裝時間類

開發中經常用到時間的一些操作,比如昨天,今天,前天,近七天,一周等等。class time if type 1 else 返回當前時間的月份 time 時間格式為時間 2018 8 21 function getmonth time type switch type return this mont...