您好,欢迎访问一九零五行业门户网

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

这篇文章主要介绍了zend framework入门教程之zend_registry组件用法,结合实例形式分析了zend_registry组件实现对象注册的设置、获取、判断、删除等操作常用技巧,需要的朋友可以参考下
本文实例讲述了zend framework中zend_registry组件用法。分享给大家供大家参考,具体如下:
1.对象注册表
入门案例:
<?phprequire_once("zend/loader.php");zend_loader::loadclass('zend_registry');$member = array( "姓名"=>"张三", "性别"=>"女", "年龄"=>"13", "职业"=>"学生", "爱好"=>"玩游戏", "血型"=>"ab" );$registry = new zend_registry($member);echo "姓名为:";echo $registry["姓名"];echo "<p>";echo "性别为:";echo $registry["性别"];echo "<p>";echo "年龄为:";echo $registry["年龄"];echo "<p>";echo "职业为:";echo $registry["职业"];echo "<p>";echo "爱好为:";echo $registry["爱好"];echo "<p>";
结果为:
姓名为:张三性别为:女年龄为:13职业为:学生爱好为:玩游戏
2.set()方法和get()方法设置数据、获取数据
语法:
设置值zend_registry::set('index','value')
获取值zend_registry::get('index')
案例:
<?phprequire_once("zend/loader.php");zend_loader::loadclass('zend_registry');$member = array( "姓名"=>"张三", "性别"=>"女", "年龄"=>"13", "职业"=>"学生", "爱好"=>"玩游戏", "血型"=>"ab" );zend_registry::set("registry",$member);$registry = zend_registry::get("registry");echo "姓名为:";echo $registry["姓名"];echo "<p>";echo "性别为:";echo $registry["性别"];echo "<p>";echo "年龄为:";echo $registry["年龄"];echo "<p>";echo "职业为:";echo $registry["职业"];echo "<p>";echo "爱好为:";echo $registry["爱好"];echo "<p>";
说明:效果等同于new的结果。
3.对象注册表setinstance、getinstance
例子:
<?phprequire_once("zend/loader.php");zend_loader::loadclass('zend_registry');$registry = new zend_registry();zend_registry::setinstance($registry);$registry->name = "mike";$registry->age = "30";$registry = zend_registry::getinstance();echo $registry->name;echo "<p>";echo $registry->age;echo "<p>";$registry->sex = "male";echo $registry->sex;
结果:
mike30male
说明:通过setinstance方法,就可以用对象的方式设置其中的值了,然后通过getinstance来获取值。
4.isregistered()来实现索引是否有值的判断。
案例:
<?phprequire_once("zend/loader.php");zend_loader::loadclass('zend_registry');zend_registry::set("name","张三");if(zend_registry::isregistered("name")){ echo "对象注册表name已经定义";}else{ echo "对象注册表name没有定义";}echo "<p>";if(zend_registry::isregistered("age")){ echo "对象注册表age已经定义";}else{ echo "对象注册表age没有定义";}
结果:
对象注册表name已经定义对象注册表age没有定义
说明:
如果定义了,可以检测出来。
5.删除静态注册表
zend_registry::_unsetinstance()方法删除静态注册表
案例:
<?phprequire_once("zend/loader.php");zend_loader::loadclass('zend_registry');zend_registry::set("name","张三");echo "执行操作前:";echo "<p>";if(zend_registry::isregistered("name")){ echo "对象注册表name已经定义";}else{ echo "对象注册表name没有定义";}echo "<p>";if(zend_registry::isregistered("age")){ echo "对象注册表age已经定义";}else{ echo "对象注册表age没有定义";}zend_registry::_unsetinstance("name");echo "<p>";echo "执行操作后:";echo "<p>";if(zend_registry::isregistered("name")){ echo "对象注册表name已经定义";}else{ echo "对象注册表name没有定义";}echo "<p>";if(zend_registry::isregistered("age")){ echo "对象注册表age已经定义";}else{ echo "对象注册表age没有定义";}
结果:
执行操作前:对象注册表name已经定义对象注册表age没有定义执行操作后:对象注册表name没有定义对象注册表age没有定义
说明:执行完删除方法之后,之前的注册信息就没有了。
小结:
这就是zend_registry的几个常用的方法与案例。通过注册表可以实现很多普通变量无法实现的功能。
以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注!
相关推荐:
关于zend framework处理json数据的方法
关于zend framework中loader及pluginloader的用法解析
关于zend framework动作控制器的用法
以上就是关于zend framework中zend_registry组件的用法分析的详细内容。
其它类似信息

推荐信息