久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

php類自動裝載、鏈式操作、魔術方法實現代碼

這篇文章主要介紹了php類自動裝載、鏈式操作、魔術方法,需要的朋友可以參考下

1、自動裝載實例

目錄下有3個文件:index.php load.php tests文件夾

tests文件夾里有 test1.php

<?php
namespace Tests;
class Test1{
  static function test(){
    echo __CLASS__.'<br>';
    echo __FILE__.'<br>';
  }
}

index.php內容

<?php
include "load.php";
Tests\Test1::test();

load.php內容

<?php
class Loader
{
  static function loadClass($class)
  {
    $class =  __DIR__.DIRECTORY_SEPARATOR.str_replace('\\','/',$class).'.php';
    if (file_exists($class)) {
      include $class;
      return;
    }
  }
}
spl_autoload_register(array('Loader','loadClass'));

2、php 鏈式操作

namespace Baobab;

class Database{
 function where($where){
  return $this;
 }
 
 function order($order) {
  return $this;
 }
 
 function limit($limit){
  return $this;
 }
}

?>

//index.php
$db = new Baobab\Database();
$db->where('id = 1')->order('order by id')->limit(1);

3、魔術方法:

__get/__set:接管對象屬性。在給不可訪問屬性賦值時,

__set() 會被調用;讀取不可訪問屬性的值時,__get() 會被調用。

__call/__callStatic:在對象中調用一個不可訪問方法時,__call() 會被調用;用靜態(tài)方式中調用一個不可訪問方法時,__callStatic() 會被調用。

__toString:一個類轉化成字符串

__invoke:以調用函數的方式調用一個對象時,__invoke() 方法會被自動調用。

<?php
namespace Baobab;

class Object{
 protected $array = array();
 function __set($key, $value){
  $this->array[$key] = $value;
 }
 function __get($key){
  //echo __METHOD__;
  return $this->array[$key];
 }
 
 function __call($func, $param){
  //var_dump($func,$param);
  return 'magic function';
 }
 
 static function __callstatic($func, $param) {
  //var_dump($func, $param);
  return 'magic static function';
 }
 
 function __toString(){
  return __CLASS__;
 }
 
 function __invoke($param) {
  return var_dump($param);
 }
 
}
$obj = new baobab\Object();
$obj->title = 'hello';
echo $obj->title;
echo $obj->test1('hello', 123);
echo $obj::test1('hello1', 1234);
echo $obj;
echo $obj('test1');

以上就是php中自動裝載、鏈式操作、魔術的實現代碼,需要的朋友可以參考一下。

【網站聲明】本站除付費源碼經過測試外,其他素材未做測試,不保證完整性,網站上部分源碼僅限學習交流,請勿用于商業(yè)用途。如損害你的權益請聯(lián)系客服QQ:2655101040 給予處理,謝謝支持。

相關文檔推薦

這篇文章主要介紹了PHP實現鏈式操作的三種方法,結合實例形式分析了php鏈式操作的相關實現技巧與使用注意事項,需要的朋友可以參考下
下面小編就為大家?guī)硪黄赑HP的加載類操作以及其他兩種魔術方法的應用實例。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
這篇文章主要介紹了PHP魔術方法之__call與__callStatic方法,需要的朋友可以參考下
本篇文章主要介紹了淺談PHP中的面向對象OOP中的魔術方法 ,具有一定的參考價值,感興趣的小伙伴們可以參考一下
這篇文章主要介紹了Yii框架使用魔術方法實現跨文件調用功能,涉及Yii框架中php面向對象程序設計相關操作技巧,需要的朋友可以參考下
本篇文章主要介紹了PHP中常用的魔術方法的相關資料。具有很好的參考價值。下面跟著小編一起來看下吧
主站蜘蛛池模板: 经典三级第一页 | 完全免费av | 天天干天天舔 | www.久久久久 | 亚洲天天看 | 国产视频中文字幕 | 特黄网站| 午夜aaa| 国产视频黄 | 免费看黄色的视频 | 日韩久久网 | 中文字幕一区在线 | 欧美日韩黄色片 | 国产免费一区 | 免费看一级黄色片 | 手机av在线播放 | 色窝| 黄色一极片 | 日日操天天操 | 天天色小说 | 国语对白做受欧美 | 欧美成人一区二区三区片免费 | 九九久久免费视频 | 国产日韩精品一区二区 | 中文字幕视频一区 | 成人片在线看 | 日本a在线 | 亚洲欧美另类在线 | 亚洲美女一区 | 久久久久免费视频 | 欧美一级在线观看 | aaa黄色| 亚洲精品久久久蜜桃 | 精品国产三级 | 天堂网在线资源 | 亚洲国产精品成人无久久精品 | 天天操天天干天天 | 中文字幕偷拍 | 在线观看视频一区二区 | 中文字幕第2页 | 国产一区二区中文字幕 |