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 相关文章推荐
PHP 截取字符串 分别适合GB2312和UTF8编码情况
Feb 12 PHP
php 将bmp图片转为jpg等其他任意格式的图片
Jun 29 PHP
PHP 上传文件的方法(类)
Jul 30 PHP
PHP is_dir() 判断给定文件名是否是一个目录
May 10 PHP
php 获取全局变量的代码
Apr 21 PHP
php中jQuery插件autocomplate的简单使用笔记
Jun 14 PHP
基于PHP CURL获取邮箱地址的详解
Jun 03 PHP
php制作中间带自己定义图片二维码的方法
Jan 27 PHP
php从memcache读取数据再批量写入mysql的方法
Dec 29 PHP
PHP简单生成缩略图相册的方法
Jul 29 PHP
thinkphp jquery实现图片上传和预览效果
Jul 22 PHP
php实现数组纵向转横向并过滤重复值的方法分析
May 29 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
PHP 页面跳转到另一个页面的多种方法方法总结
2009/07/07 PHP
php下封装较好的数字分页方法
2010/11/23 PHP
使用phpQuery采集网页的方法
2013/11/13 PHP
Nigma vs Liquid BO3 第二场2.13
2021/03/10 DOTA
父子窗体间传递JSON格式的数据的代码
2010/12/25 Javascript
深入理解Javascript闭包 新手版
2010/12/28 Javascript
jQuery '行 4954 错误: 不支持该属性或方法' 的问题解决方法
2011/01/19 Javascript
javascript学习笔记(三) String 字符串类型介绍
2012/06/19 Javascript
JS/FLASH实现复制代码到剪贴板(兼容所有浏览器)
2013/05/27 Javascript
jquery中的事件处理详细介绍
2013/06/24 Javascript
javascript获取鼠标位置部分的实例代码(兼容IE,FF)
2013/08/05 Javascript
jquery easyui combobox模糊过滤(示例代码)
2013/11/30 Javascript
js获取当前页面的url网址信息
2014/06/12 Javascript
如何利用模板将HTML从JavaScript中抽离
2016/10/08 Javascript
JS数组交集、并集、差集的示例代码
2017/08/23 Javascript
Vue使用axios出现options请求方法
2019/05/30 Javascript
vuex实现像调用模板方法一样调用Mutations方法
2019/11/06 Javascript
微信小程序自定义底部弹出框功能
2020/11/18 Javascript
使用Python的urllib2模块处理url和图片的技巧两则
2016/02/18 Python
Python基于list的append和pop方法实现堆栈与队列功能示例
2017/07/24 Python
单链表反转python实现代码示例
2018/02/08 Python
Pipenv一键搭建python虚拟环境的方法
2018/05/22 Python
用Pycharm实现鼠标滚轮控制字体大小的方法
2019/01/15 Python
Python中six模块基础用法
2019/12/08 Python
浅析Python数字类型和字符串类型的内置方法
2019/12/22 Python
python GUI库图形界面开发之PyQt5多行文本框控件QTextEdit详细使用方法实例
2020/02/28 Python
python 实现在无序数组中找到中位数方法
2020/03/03 Python
Python用Jira库来操作Jira
2020/12/28 Python
英国最大的汽车交易网站:Auto Trader UK
2016/09/23 全球购物
外企测试工程师面试题
2015/02/01 面试题
计算机操作自荐信
2013/12/07 职场文书
浙江文明网签名寄语
2014/01/18 职场文书
留学推荐信范文
2014/05/10 职场文书
党员政治学习材料
2014/05/14 职场文书
公务员个人年终总结
2015/02/12 职场文书
科技活动总结范文
2015/05/11 职场文书