您好,登錄后才能下訂單哦!
這篇文章給大家介紹Zend Framework中如何使用Zend_Registry組件,內(nèi)容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
1.對象注冊表
入門案例:
<?php require_once("Zend/Loader.php"); Zend_Loader::loadClass('Zend_Registry'); $member = array( "姓名"=>"張三", "性別"=>"女", "年齡"=>"13", "職業(yè)"=>"學生", "愛好"=>"玩游戲", "血型"=>"AB" ); $registry = new Zend_Registry($member); echo "姓名為:"; echo $registry["姓名"]; echo "<p>"; echo "性別為:"; echo $registry["性別"]; echo "<p>"; echo "年齡為:"; echo $registry["年齡"]; echo "<p>"; echo "職業(yè)為:"; echo $registry["職業(yè)"]; echo "<p>"; echo "愛好為:"; echo $registry["愛好"]; echo "<p>";
結(jié)果為:
姓名為:張三 性別為:女 年齡為:13 職業(yè)為:學生 愛好為:玩游戲
2.set()方法和get()方法設(shè)置數(shù)據(jù)、獲取數(shù)據(jù)
語法:
設(shè)置值Zend_Registry::set('index','value')
獲取值Zend_Registry::get('index')
案例:
<?php require_once("Zend/Loader.php"); Zend_Loader::loadClass('Zend_Registry'); $member = array( "姓名"=>"張三", "性別"=>"女", "年齡"=>"13", "職業(yè)"=>"學生", "愛好"=>"玩游戲", "血型"=>"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 "職業(yè)為:"; echo $registry["職業(yè)"]; echo "<p>"; echo "愛好為:"; echo $registry["愛好"]; echo "<p>";
說明:效果等同于new的結(jié)果。
3.對象注冊表setInstance、getInstance
例子:
<?php require_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;
結(jié)果:
Mike 30 male
說明:通過setInstance方法,就可以用對象的方式設(shè)置其中的值了,然后通過getInstance來獲取值。
4.isRegistered()來實現(xiàn)索引是否有值的判斷。
案例:
<?php require_once("Zend/Loader.php"); Zend_Loader::loadClass('Zend_Registry'); Zend_Registry::set("name","張三"); if(Zend_Registry::isRegistered("name")){ echo "對象注冊表name已經(jīng)定義"; }else{ echo "對象注冊表name沒有定義"; } echo "<p>"; if(Zend_Registry::isRegistered("age")){ echo "對象注冊表age已經(jīng)定義"; }else{ echo "對象注冊表age沒有定義"; }
結(jié)果:
對象注冊表name已經(jīng)定義 對象注冊表age沒有定義
說明:
如果定義了,可以檢測出來。
5.刪除靜態(tài)注冊表
Zend_Registry::_unsetInstance()方法刪除靜態(tài)注冊表
案例:
<?php require_once("Zend/Loader.php"); Zend_Loader::loadClass('Zend_Registry'); Zend_Registry::set("name","張三"); echo "執(zhí)行操作前:"; echo "<p>"; if(Zend_Registry::isRegistered("name")){ echo "對象注冊表name已經(jīng)定義"; }else{ echo "對象注冊表name沒有定義"; } echo "<p>"; if(Zend_Registry::isRegistered("age")){ echo "對象注冊表age已經(jīng)定義"; }else{ echo "對象注冊表age沒有定義"; } Zend_Registry::_unsetInstance("name"); echo "<p>"; echo "執(zhí)行操作后:"; echo "<p>"; if(Zend_Registry::isRegistered("name")){ echo "對象注冊表name已經(jīng)定義"; }else{ echo "對象注冊表name沒有定義"; } echo "<p>"; if(Zend_Registry::isRegistered("age")){ echo "對象注冊表age已經(jīng)定義"; }else{ echo "對象注冊表age沒有定義"; }
結(jié)果:
執(zhí)行操作前: 對象注冊表name已經(jīng)定義 對象注冊表age沒有定義 執(zhí)行操作后: 對象注冊表name沒有定義 對象注冊表age沒有定義
關(guān)于Zend Framework中如何使用Zend_Registry組件就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。