《PHP應用:php魔術方法功能與用法實例分析》要點:
本文介紹了PHP應用:php魔術方法功能與用法實例分析,希望對您有用。如果有疑問,可以聯系我們。
PHP教程本文實例講述了php魔術方法功能與用法.分享給大家供大家參考,具體如下:
PHP教程
<?php
//php中的魔術方法
header('content-type:text/html;charset=utf-8');
class Person{
public $name;
protected $sex;
private $salary;
//構造方法,實例化對象是自動觸發的方法
public function __construct($name,$sex,$salary){
$this->name=$name;
$this->sex=$sex;
$this->salary=$salary;
}
//魔術常量__CLASS__
public function getClassName(){
echo __CLASS__;
}
// __FUNCTION__
public function getMethod(){
echo __FUNCTION__;
}
//__tostring()
public function __tostring(){
return '對象必須用var_dump()'.'姓名是'.$this->name;
}
//__clone() 在使用clone方法的時候會自動調用
public function __clone(){
echo '這個對象是被克隆出來的';
$this->name='李四';
}
//__get() 當調用一個不存在或權限不夠的屬性自動觸發的方法
public function __get($a){
echo $a.'屬性不存在或權限不夠';
}
//__set() 當設置一個不存在或權限不夠的屬性時自動觸發的方法
public function __set($name,$value){
echo $name.'為'.$value;
}
//__isset() 當在類外判斷一個不存在或權限不夠的屬性時自動觸發的方法
public function __isset($name){
echo $name.'不能為空';
}
//__call() 當去訪問一個權限不夠或者不存在的方法的時候,會自動觸發的魔術方法
public function __call($method,$a){
echo '您請求的方法'.$method.'不存在';
$this->getname();
}
public function getname(){
echo $this->name;
}
}
//實例化對象
$person=new Person('張三','男',12223);
$person1=new Person('張三','男',12223);
//$person2=new Person('李四','女',11111);
var_dump($person);
var_dump($person1);
exit;
$person->getClassName();
$person->getMethod();
//echo $person->name;
//echo $person;
$person1=$person; //同一個對象
//var_dump($person);
//var_dump($person1);
$person2=clone $person; //克隆會產生不一樣的對象
//var_dump($person);
//var_dump($person2);
//echo $person2->name;
//$person->salary=10000;
//var_dump(isset($person->salary));
//$person->getName();
PHP教程更多關于PHP相關內容感興趣的讀者可查看本站專題:《php面向對象程序設計入門教程》、《PHP基本語法入門教程》、《PHP運算與運算符用法總結》、《PHP網絡編程技巧總結》、《PHP數組(Array)操作技巧大全》、《php字符串(string)用法總結》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧匯總》
PHP教程希望本文所述對大家PHP程序設計有所幫助.