首页 > 作文

PHP容器类的两种实现方式示例

更新时间:2023-04-07 14:25:26 阅读: 评论:0

本文实例讲述了php容器类的两种实现方式。分享给大家供大家参考,具体如下:

通过魔术方法实现

class

class magiccontainer{  private $ele;  function __construct()  {    $this->ele = [];  }  function __t($name, $valu逍遥游教案e)  {    $this->ele[$name] = $value;  }  function __get($name)  {    return $this->ele[$name];  }  function __ist($name)  {    return ist($this->ele[$name]);  }  function __unt($name)  {    if(ist($this->ele[$name])){      unt($this->ele[$name]);    }  }}

usage

$container = new magiccontainer();$container->logger = function ($msg){  file_put_contents('info.log',$msg.php_eol,file_append);};$logger = $container->logger;$logger('magic container works');

通过arrayaccess接口实现

class

class arraycontainer implements arrayaccess {  private $elements;  public function __construct()  {    $this->elemen一本大学分数线ts = [];  }  public function offtexists($offt){    return ist($this->elements[$offt]);  }  public function offtget($offt){    if($this->offtexists($2018年高考时间offt)){      return $this->elements[$offt];    }el{      return fal;    }  }  public function offtt($offt, $value){    $this->elements[$offt] = $value;  }  public function offtunt($offt){    if($this->offtexists($offt)){      unt($this->elements[$offt]);    }  }}

usage

$container = new arraycontainer();$container['logger'] = function ($msg){  file_put_contents('info.log',$msg.php_eol,file_append);};$logger = $container['logger'];$logger('array container works');

container

class

class container implements arrayaccess {  private $elements;  public function __construct()  {    $this->elements = [];  }  public function offtexists($offt){    return ist($this->elements[$offt]);  }  public function offtget($offt){    if($this->offtexists($offt)){      return $this->elements[$offt];    }el{      return fal;    }  }  public function offtt($offt, $value){    $this->elements[$offt] = $value;  }  public function offtunt($offt){    if($this->offtexists($offt)){      unt($this->elements[$offt]);    }  }  function __t($name, $value)  {    $this->elements[$name] = $value;  }  function __get($name)  {    return $this->elemen党员组织生活会个人发言材料ts[$name];  }  function __ist($name)  {    return ist($this->elements[$name]);  }  function __unt($name)  {    if(ist($this->elements[$name])){      unt砂纸画($this->elements[$name]);    }  }}

usage

$container = new container();$container['logger'] = function ($msg){  file_put_contents('info.log',$msg.php_eol,file_append);};$logger = $container->logger;$logger('container works');

本文发布于:2023-04-07 14:25:24,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/zuowen/1c078bd7830fba63f144eeb9a9a35a59.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:PHP容器类的两种实现方式示例.doc

本文 PDF 下载地址:PHP容器类的两种实现方式示例.pdf

标签:砂纸   两种   一本   给大家
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图