首页  >  文章  >  后端开发  >  关于Zend Framework中Zend_Registry组件的用法分析

关于Zend Framework中Zend_Registry组件的用法分析

不言
不言原创
2018-06-15 14:33:111235浏览

这篇文章主要介绍了Zend Framework入门教程之Zend_Registry组件用法,结合实例形式分析了Zend_Registry组件实现对象注册的设置、获取、判断、删除等操作常用技巧,需要的朋友可以参考下

本文实例讲述了Zend Framework中Zend_Registry组件用法。分享给大家供大家参考,具体如下:

1.对象注册表

入门案例:

"张三",
  "性别"=>"女",
  "年龄"=>"13",
  "职业"=>"学生",
  "爱好"=>"玩游戏",
  "血型"=>"AB"
  );
$registry = new Zend_Registry($member);
echo "姓名为:";
echo $registry["姓名"];
echo "

"; echo "性别为:"; echo $registry["性别"]; echo "

"; echo "年龄为:"; echo $registry["年龄"]; echo "

"; echo "职业为:"; echo $registry["职业"]; echo "

"; echo "爱好为:"; echo $registry["爱好"]; echo "

";

结果为:

姓名为:张三
性别为:女
年龄为:13
职业为:学生
爱好为:玩游戏

2.set()方法和get()方法设置数据、获取数据

语法:

设置值Zend_Registry::set('index','value')
获取值Zend_Registry::get('index')

案例:

"张三",
  "性别"=>"女",
  "年龄"=>"13",
  "职业"=>"学生",
  "爱好"=>"玩游戏",
  "血型"=>"AB"
  );
Zend_Registry::set("registry",$member);
$registry = Zend_Registry::get("registry");
echo "姓名为:";
echo $registry["姓名"];
echo "

"; echo "性别为:"; echo $registry["性别"]; echo "

"; echo "年龄为:"; echo $registry["年龄"]; echo "

"; echo "职业为:"; echo $registry["职业"]; echo "

"; echo "爱好为:"; echo $registry["爱好"]; echo "

";

说明:效果等同于new的结果。

3.对象注册表setInstance、getInstance

例子:

name = "Mike";
$registry->age = "30";
$registry = Zend_Registry::getInstance();
echo $registry->name;
echo "

"; echo $registry->age; echo "

"; $registry->sex = "male"; echo $registry->sex;

结果:

Mike
30
male

说明:通过setInstance方法,就可以用对象的方式设置其中的值了,然后通过getInstance来获取值。

4.isRegistered()来实现索引是否有值的判断。

案例:

";
if(Zend_Registry::isRegistered("age")){
  echo "对象注册表age已经定义";
}else{
  echo "对象注册表age没有定义";
}

结果:

对象注册表name已经定义
对象注册表age没有定义

说明:

如果定义了,可以检测出来。

5.删除静态注册表

Zend_Registry::_unsetInstance()方法删除静态注册表

案例:

";
if(Zend_Registry::isRegistered("name")){
  echo "对象注册表name已经定义";
}else{
  echo "对象注册表name没有定义";
}
echo "

"; if(Zend_Registry::isRegistered("age")){ echo "对象注册表age已经定义"; }else{ echo "对象注册表age没有定义"; } Zend_Registry::_unsetInstance("name"); echo "

"; echo "执行操作后:"; echo "

"; if(Zend_Registry::isRegistered("name")){ echo "对象注册表name已经定义"; }else{ echo "对象注册表name没有定义"; } echo "

"; if(Zend_Registry::isRegistered("age")){ echo "对象注册表age已经定义"; }else{ echo "对象注册表age没有定义"; }

结果:

执行操作前:
对象注册表name已经定义
对象注册表age没有定义
执行操作后:
对象注册表name没有定义
对象注册表age没有定义

说明:执行完删除方法之后,之前的注册信息就没有了。

小结:

这就是Zend_Registry的几个常用的方法与案例。通过注册表可以实现很多普通变量无法实现的功能。

以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!

相关推荐:

关于Zend Framework处理Json数据的方法

关于Zend Framework中Loader及PluginLoader的用法解析

关于Zend Framework动作控制器的用法

以上是关于Zend Framework中Zend_Registry组件的用法分析的详细内容。更多信息请关注PHP中文网其他相关文章!

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