首頁 > 後端開發 > php教程 > php數組的常用函數

php數組的常用函數

高洛峰
發布: 2023-03-01 11:12:02
原創
960 人瀏覽過

程式碼如下: 
/* 
* 封裝性:物件導向三大特性之一 

* 1.就是把物件的成員(屬性,方法)結合成一個獨立的相同單位,並儘可能隱藏物件的內部細節 
* 存取權修飾符public protected private 
* private:私有的,用這個關鍵字修飾的成員,只能在物件內部存取(只有用$this存取) 

* 屬性可以封裝:
* 只要一個變量,需要在多個方法使用,就將這個變數宣告為成員屬性,可以直接在這個物件中的所有方法中使用 

* 成員屬性,相當於這個物件中的全域變數 
*
* 成員屬性都會在方法中使用,成員屬性值的變化其實就是在改變方法的執行行為,也就是改變了對象的功能 

* 成員屬性的值如果不正常,方法執行的功能葉就不正常 

* 作用:不需要在物件外部改變或讀取它的值 
* 1.封裝 
* 再提供一個公有的方法(經過方法對物件成員屬性進行賦值與取值就可以控制) 
*

* 方法也可以封裝 

* 作用: 
* 1.使用private修飾使其只能在內部使用 

* 2.一個類別中有100個方法,為另外一個包裝了95個(另外55個服務的方法),只有5個方法可以使用 

* 100個成員屬性,都讓取值,不可以改值;或只可改值,不可取得值//此種情況下使用以下方法比較方便 
* 與封裝相關的魔術方法: 

* __set();//是直接設定[私有的]成員屬性值時,自動呼叫的方法 
* __get();//是直接取得[私有的]成員屬性值時,自動呼叫的方法 
* __isset();//是直接使用isset()查看物件中私有屬性是否存在時,自動呼叫這個方法 
* __unset();//是直接使用unset( )刪除物件中私有屬性時,自動呼叫的方法 







*/ 
class Person{ 

*/ 
class Person{ 
/xate name; 
private $age; 
private $sex; 
private __unset($proName){ 
unset($this->$proName); 

/////////////////////////////////存在查看方法 
//__isset($proName)的使用,$proName代表屬性名稱 
private function __isset($proName){ 
return isset($this->$proName);//isset()回傳是否存在 


} __construct($name,$age,$sex){ 
$this->name=$name; 
$this->age=$age; 
$this->sex=$sex; 

//當取得私有的成員屬性時,自動呼叫此方法 
private function __get($proName) 

//控制所取得的值 
if($proName=="age"){ 
if($this-age>40) return $this->age-10; 

return $this->$proName; 

//當設定私有的成員屬性時,自動呼叫此方法 
private function __set($proName,$proValue){ 
private function __set($proName,$proValue){ //$proName表示成員屬性名,$proValue表示成員屬性值 
//控制設定範圍 
if($proName=="age"){ 
if($proValue > 100 || $proValuereturn;

$this->$proName=$proValue; 

//提供公有方法設定成員屬性的值 
function setAge($age){ 
//控制年齡範圍,增加安全性 > 100 || $age return; 
$this->age=$age; 

//提供公有方法來取得成員屬性的值 
function getAge(){ 
//控制取得年齡的範圍
if($this->age return $this->age; 
else if($this->agereturn $this->age-5; 
else if($this->age return $this->age; 
else 
return $this->age-15; 
提供公有方法來} 
function say(){ 
echo "我的名字:{$this->name},我的年齡:{$this->age},我的姓別:{$this->sex}
"; 
//訪問封裝過的run()方法 
$this-run(); 
}
private function run(){ 
echo '111111111111


function eat(){ 

//析構方法 
("zhangsan ",25,"男"); 
$p2=new Person; 
$p3=new Person; 
//$p1->age=-50;//因為年齡在外部隨意訪問,所以成員屬性藥封裝,才有安全性。
$p1->setAge(30);//透過方法設定成員屬性德值 
$p1->getAge();//透過方法取得成員屬性德值 
//透過新增家魔術方法__set( $proName,$proValue) __get($proName),我們可以直接呼叫成員屬性了 
$p1->say();//可以呼叫 
$p1->run();//私有的方法不能直接呼叫 
//刪除$p1裡面的name 
unset($p1->name); 
//判斷name是否存在 
if(isset($p1->name)){ 
echo "存在
"; 
}else){ 
echo "存在
"; 
}else { 
echo "沒有這個成員
"; 

} 🎜?> 🎜
相關標籤:
php
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板