首页 >后端开发 >php教程 >php类自动装载和php链式操作的原理

php类自动装载和php链式操作的原理

小云云
小云云原创
2018-02-03 10:16:151374浏览

本文主要和大家分享php类自动装载和php链式操作的原理,希望能帮助到大家。

1、自动装载实例

目录下有3个文件:index.php load.php tests文件夹

tests文件夹里有 test1.php


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

index.php内容


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

load.php内容


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

2.链式操作原理

在一个类中有多个方法,当你实例化这个类,并调用方法时只能一个一个调用,类似:

db.php

<?php
 
class db
{
    public function where()
    {
    //code here
    }
    public function order()
    {
    //code here
    }
    public function limit()
    {
    //code here
    }
}

   

index.php

<?php
 
$db = new db();
 
$db->where();
$db->order();
$db->limit();

   

如果要实现链式调用,这要在方法的结束添加return $this即可。

db.php

<?php
 
class db
{
    public function where()
    {
    //code here
    return $this;
    }
    public function order()
    {
    //code here
    return $this;
    }
    public function limit()
    {
    //code here
    return $this;
    }
}

   

index.php

<?php
 
$db = new db();
 
$db->where()->order()->limit();

相关推荐:

PHP链式操作的思想详解

php中关于类的自动装载与链式操作以及魔术方法的代码实例

有关链式操作的文章推荐10篇

以上是php类自动装载和php链式操作的原理的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn