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 adodb分页实现代码
Mar 19 PHP
php set_magic_quotes_runtime() 函数过时解决方法
Jul 08 PHP
一篇有意思的技术文章php介绍篇
Oct 26 PHP
php批量缩放图片的代码[ini参数控制]
Feb 11 PHP
不重新编译PHP为php增加openssl模块的方法
Jun 14 PHP
一个PHP的ZIP压缩类分享
May 04 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(四)
Jun 23 PHP
通过Email发送PHP错误的方法
Jul 20 PHP
PHP手机号中间四位用星号*代替显示的实例
Jun 02 PHP
基于PHP-FPM进程池探秘
Oct 17 PHP
php分享朋友圈的实现代码
Feb 18 PHP
PHP终止脚本运行三种实现方法详解
Sep 01 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
星际争霸兵种名称对照表
2020/03/04 星际争霸
PHP - Html Transfer Code
2006/10/09 PHP
PHP支持多种格式图片上传(支持jpg、png、gif)
2011/11/03 PHP
PHP字符串长度计算 - strlen()函数使用介绍
2013/10/15 PHP
Yii获取当前url和域名的方法
2015/06/08 PHP
php根据用户名和手机号查询是否存在手机号码
2017/02/16 PHP
php获取微信基础接口凭证Access_token
2018/08/23 PHP
Laravel5.4框架中视图共享数据的方法详解
2019/09/05 PHP
js constructor的实际作用分析
2011/11/15 Javascript
js代码实现无缝滚动(文字和图片)
2015/08/20 Javascript
JS实现响应鼠标点击动画渐变弹出层效果代码
2016/03/25 Javascript
Node.js批量给图片加水印的方法
2016/11/15 Javascript
bootstrap表单按回车会自动刷新页面的解决办法
2017/03/08 Javascript
Angular2使用jQuery的方法教程
2017/05/28 jQuery
protractor的安装与基本使用教程
2017/07/07 Javascript
JavaScript原型链与继承操作实例总结
2018/08/24 Javascript
javascript面向对象创建对象的方式小结
2019/07/29 Javascript
vue 项目打包时样式及背景图片路径找不到的解决方式
2019/11/12 Javascript
Vue单文件组件开发实现过程详解
2020/07/30 Javascript
Windows环境下python环境安装使用图文教程
2018/03/13 Python
教你使用python画一朵花送女朋友
2018/03/29 Python
Django 中使用流响应处理视频的方法
2018/07/20 Python
树莓派采用socket方式文件传输(python)
2019/06/22 Python
python实现桌面托盘气泡提示
2019/07/29 Python
Python 3.8 新功能大揭秘【新手必学】
2020/02/05 Python
VSCode基础使用与VSCode调试python程序入门的图文教程
2020/03/30 Python
如何清空python的变量
2020/07/05 Python
css3 iphone玻璃透明气泡完美实现
2013/03/20 HTML / CSS
Perfume’s Club英国官网:购买香水和护肤品
2019/11/02 全球购物
英国折扣高尔夫商店:Discount Golf Store
2019/11/19 全球购物
民族团结先进个人材料
2014/02/05 职场文书
放飞梦想演讲稿200字
2014/08/26 职场文书
领导干部“四风”问题批评与自我批评材料
2014/09/24 职场文书
质检员工作总结2015
2015/04/25 职场文书
浅谈pytorch中stack和cat的及to_tensor的坑
2021/05/20 Python
Python捕获、播放和保存摄像头视频并提高视频清晰度和对比度
2022/04/14 Python