最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

 更新時間:2017年07月23日 22:27:29   作者:北京流浪兒  
這篇文章主要介紹了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中自動裝載、鏈式操作、魔術的實現代碼,需要的朋友可以參考一下。

相關文章

  • php中分頁及SqlHelper類用法實例

    php中分頁及SqlHelper類用法實例

    這篇文章主要介紹了php中分頁及SqlHelper類用法,結合實例形式分析了php數據庫查詢類與分頁類的定義與具體使用技巧,需要的朋友可以參考下
    2017-01-01
  • PHP關于htmlspecialchars、strip_tags、addslashes的解釋

    PHP關于htmlspecialchars、strip_tags、addslashes的解釋

    這篇文章主要介紹了PHP關于htmlspecialchars、strip_tags、addslashes的解釋,需要的朋友可以參考下
    2014-07-07
  • PHP圖片處理之圖片背景、畫布操作

    PHP圖片處理之圖片背景、畫布操作

    這篇文章主要介紹了PHP圖片處理之圖片背景、畫布操作,本文先是講解了PHP中創(chuàng)建圖片的幾個函數,然后給出了一個給圖片添加文字水印的例子,需要的朋友可以參考下
    2014-11-11
  • PHP中$_SERVER使用說明

    PHP中$_SERVER使用說明

    這篇文章主要介紹了PHP中$_SERVER使用說明的相關資料,需要的朋友可以參考下
    2015-07-07
  • PHP5.5基于mysqli連接MySQL數據庫和讀取數據操作實例詳解

    PHP5.5基于mysqli連接MySQL數據庫和讀取數據操作實例詳解

    這篇文章主要介紹了PHP5.5基于mysqli連接MySQL數據庫和讀取數據操作,結合實例形式詳細分析了php5.5使用mysqli連接、讀取mysql數據庫,以及PDO預處理相關操作技巧,需要的朋友可以參考下
    2019-02-02
  • PHP獲取mysql數據表的字段名稱和詳細信息的方法

    PHP獲取mysql數據表的字段名稱和詳細信息的方法

    這篇文章主要介紹了PHP獲取mysql數據表的字段名稱和詳細信息的方法,本文同時還給出了獲取數據表結構、列出數據庫數據表等方法,需要的朋友可以參考下
    2014-09-09
  • php關鍵字僅替換一次的實現函數

    php關鍵字僅替換一次的實現函數

    這篇文章主要介紹了php實現每個關鍵字僅需要替換一次,有時一個項目里面涉及到批量替換關鍵字的問題,本文針對控制替換次數進行研究,感興趣的小伙伴們可以參考一下
    2015-10-10
  • php猴子選大王問題解決方法

    php猴子選大王問題解決方法

    這篇文章主要介紹了php猴子選大王問題解決方法,其本質為約瑟夫環(huán)問題,這里提供了一種較為簡單的解決方法,需要的朋友可以參考下
    2015-05-05
  • PHP會話操作之cookie用法分析

    PHP會話操作之cookie用法分析

    這篇文章主要介紹了PHP會話操作之cookie用法,結合實例形式分析了php中cookie的定義、有效期、有效路徑及相關使用方法與注意事項,需要的朋友可以參考下
    2016-09-09
  • 分析PHP中單雙引號的誤區(qū)和雙引號小隱患

    分析PHP中單雙引號的誤區(qū)和雙引號小隱患

    PHP中單雙引號常常會給人帶來很多的誤區(qū),其中雙引號還有些小隱患,下面是小編給大家整理的,需要的可以參考。
    2016-07-07

最新評論

大悟县| 渭南市| 通山县| 涟水县| 乌兰浩特市| 丘北县| 沾益县| 文山县| 阿坝县| 彭泽县| 井研县| 枣强县| 井冈山市| 琼结县| 阳谷县| 宁陕县| 武平县| 五大连池市| 广宁县| 涟源市| 利津县| 苏尼特左旗| 阿鲁科尔沁旗| 兴宁市| 祁阳县| 武穴市| 肥西县| 黄平县| 敖汉旗| 巴东县| 邵阳市| 涟源市| 清远市| 宁武县| 晋江市| 昭平县| 贡觉县| 长岛县| 桂林市| 库伦旗| 万山特区|