PHP工厂模式的日常使用


Posted in PHP onMarch 20, 2019

负责生成其他对象的类或方法,这就是工厂模式,下面是一个经常见到的用法

<?php
class test{
  public $x=1;
  public $setting;
  //负责生成其他对象的类或方法,这就是工厂模式
  public function getSetting(){
    if(!$this->setting){
      $this->setting=new Setting();
    }
    return $this->setting;
  }
}
class Setting{
  public function __construct(){
    echo 1111;
  }
}
$test=new test();
$setting=$test->getSetting();
$setting2=$test->getSetting();
 
 
//判断两个对象是否是同一个对象
var_dump($setting===$setting2);
//看编号,也能看出来
var_dump($setting);
var_dump($setting2);
 
 
 
 
//属性中有减号的处理
$name="x-b";
$test->$name=2;
 
var_dump($test);
 
 
//$test->x-b;//直接使用上面的属性,会被认为是一个减号
/*
报错:
PHP Notice: Use of undefined constant b - assumed 'b' in D:\phpServer\WWW\test\
test.php on line 11
 
Notice: Use of undefined constant b - assumed 'b' in D:\phpServer\WWW\test\test.
php on line 11
 
*/
 
echo $test->{'x-b'}; //这种属性里面有-的这样包一下

以上所述是小编给大家介绍的PHP工厂模式的日常使用详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

PHP 相关文章推荐
模仿OSO的论坛(一)
Oct 09 PHP
PHP 源代码压缩小工具
Dec 22 PHP
php 网页播放器用来播放在线视频的代码(自动判断并选择视频文件类型)
Jun 03 PHP
发款php蜘蛛统计插件只要有mysql就可用
Oct 12 PHP
php中批量删除Mysql中相同前缀的数据表的代码
Jul 01 PHP
如何使用Strace调试工具
Jun 03 PHP
CodeIgniter使用phpcms模板引擎
Nov 12 PHP
MyEclipse常用配置图文教程
Sep 11 PHP
golang 调用 php7详解及实例
Jan 04 PHP
php-msf源码详解
Dec 25 PHP
ThinkPHP5.0框架实现切换数据库的方法分析
Oct 30 PHP
PHP标准库 (SPL)――Countable用法示例
Jun 05 PHP
PHP函数积累总结
Mar 19 #PHP
PHP与Perl之间知识点区别整理
Mar 19 #PHP
PHP后台备份MySQL数据库的源码实例
Mar 18 #PHP
PHP5中使用mysqli的prepare操作数据库的介绍
Mar 18 #PHP
php+ajax 文件上传代码实例
Mar 18 #PHP
PHP中单例模式的使用场景与使用方法讲解
Mar 18 #PHP
详解php中curl返回false的解决办法
Mar 18 #PHP
You might like
全国FM电台频率大全 - 23 四川省
2020/03/11 无线电
中国广播史趣谈 — 几个历史第一次
2021/03/01 无线电
PHP 获取远程文件大小的3种解决方法
2013/07/11 PHP
php curl获取网页内容(IPV6下超时)的解决办法
2013/07/16 PHP
浅析php与数据库代码开发规范
2013/08/08 PHP
Joomla开启SEF的方法
2016/05/04 PHP
php仿微信红包分配算法的实现方法
2016/05/13 PHP
PDO::errorInfo讲解
2019/01/28 PHP
php swoft框架实例用法
2020/12/22 PHP
jQuery实现高亮显示的方法
2015/03/10 Javascript
JQuery中DOM事件冒泡实例分析
2015/06/13 Javascript
javascript中的作用域和闭包详解
2016/01/13 Javascript
微信小程序 下拉菜单的实现
2017/04/06 Javascript
javascript实现动态显示颜色块的报表效果
2017/04/10 Javascript
Vue.js 利用v-for中的index值实现隔行变色
2018/08/01 Javascript
js判断鼠标移入移出方向的方法
2020/06/24 Javascript
[43:43]完美世界DOTA2联赛PWL S2 LBZS vs Forest 第三场 11.29
2020/12/02 DOTA
常用python数据类型转换函数总结
2014/03/11 Python
Python中使用dom模块生成XML文件示例
2015/04/05 Python
python实现彩色图转换成灰度图
2019/01/15 Python
利用ImageAI库只需几行python代码实现目标检测
2019/08/09 Python
python pyinstaller打包exe报错的解决方法
2019/11/02 Python
python2 对excel表格操作完整示例
2020/02/23 Python
Python基于jieba, wordcloud库生成中文词云
2020/05/13 Python
python线程池如何使用
2020/05/28 Python
解决python 执行sql语句时所传参数含有单引号的问题
2020/06/06 Python
英国顶级家庭折扣店:The Works
2017/09/06 全球购物
美国克罗格超市在线购物:Kroger
2019/06/21 全球购物
西班牙在线宠物食品和配件商店:bitiba
2019/10/11 全球购物
九年级政治教学反思
2014/02/06 职场文书
接待员岗位责任制
2014/02/10 职场文书
汽车机修工岗位职责
2014/03/06 职场文书
预备党员转正考核材料
2014/06/03 职场文书
退休教师追悼词
2015/06/23 职场文书
中考百日冲刺决心书
2015/09/22 职场文书
演讲稿:态度决定一切
2019/04/02 职场文书