本文實(shí)例講述了Zend Framework中Zend_Registry元件用法。分享給大家參考,如下:
1.物件登錄
入門(mén)案例:
<?php require_once("Zend/Loader.php"); Zend_Loader::loadClass('Zend_Registry'); $member = array( "姓名"=>"張三", "性別"=>"女", "年齡"=>"13", "職業(yè)"=>"學(xué)生", "愛(ài)好"=>"玩游戲", "血型"=>"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 "愛(ài)好為:"; echo $registry["愛(ài)好"]; echo "<p>";
? ?
結(jié)果為:
姓名為:張三 性別為:女 年齡為:13 職業(yè)為:學(xué)生 愛(ài)好為:玩游戲設(shè)定資料、取得資料語(yǔ)法:設(shè)定值Zend_Registry::set('index','value')
取得值Zend_Registry::get('index')
:效果等同於new的結(jié)果。
3.物件註冊(cè)表setInstance、getInstance
<?php require_once("Zend/Loader.php"); Zend_Loader::loadClass('Zend_Registry'); $member = array( "姓名"=>"張三", "性別"=>"女", "年齡"=>"13", "職業(yè)"=>"學(xué)生", "愛(ài)好"=>"玩游戲", "血型"=>"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 "愛(ài)好為:"; echo $registry["愛(ài)好"]; echo "<p>";? ?結(jié)果:
<?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 malegetInstance來(lái)取得值。 4.isRegistered()來(lái)實(shí)現(xiàn)索引是否有值的判斷。 案例:
<?php require_once("Zend/Loader.php"); Zend_Loader::loadClass('Zend_Registry'); Zend_Registry::set("name","張三"); if(Zend_Registry::isRegistered("name")){ echo "對(duì)象注冊(cè)表name已經(jīng)定義"; }else{ echo "對(duì)象注冊(cè)表name沒(méi)有定義"; } echo "<p>"; if(Zend_Registry::isRegistered("age")){ echo "對(duì)象注冊(cè)表age已經(jīng)定義"; }else{ echo "對(duì)象注冊(cè)表age沒(méi)有定義"; }? ?結(jié)果:
對(duì)象注冊(cè)表name已經(jīng)定義 對(duì)象注冊(cè)表age沒(méi)有定義? ?說(shuō)明:
? ?
說(shuō)明:
。
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 "對(duì)象注冊(cè)表name已經(jīng)定義"; }else{ echo "對(duì)象注冊(cè)表name沒(méi)有定義"; } echo "<p>"; if(Zend_Registry::isRegistered("age")){ echo "對(duì)象注冊(cè)表age已經(jīng)定義"; }else{ echo "對(duì)象注冊(cè)表age沒(méi)有定義"; } Zend_Registry::_unsetInstance("name"); echo "<p>"; echo "執(zhí)行操作后:"; echo "<p>"; if(Zend_Registry::isRegistered("name")){ echo "對(duì)象注冊(cè)表name已經(jīng)定義"; }else{ echo "對(duì)象注冊(cè)表name沒(méi)有定義"; } echo "<p>"; if(Zend_Registry::isRegistered("age")){ echo "對(duì)象注冊(cè)表age已經(jīng)定義"; }else{ echo "對(duì)象注冊(cè)表age沒(méi)有定義"; }
? ?
刪除方法之後,之前的註冊(cè)資料就沒(méi)有了。
小結(jié):
這就是Zend_Registry的幾個(gè)常用的方法與案例。透過(guò)註冊(cè)表可以實(shí)現(xiàn)許多普通變數(shù)無(wú)法實(shí)現(xiàn)的功能。
希望本文所述對(duì)大家基於Zend Framework框架的PHP程式設(shè)計(jì)有所幫助。
更多Zend Framework入門(mén)教程之Zend_Registry組件用法詳解相關(guān)文章請(qǐng)關(guān)注PHP中文網(wǎng)!

熱AI工具

Undress AI Tool
免費(fèi)脫衣圖片

Undresser.AI Undress
人工智慧驅(qū)動(dòng)的應(yīng)用程序,用於創(chuàng)建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費(fèi)的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門(mén)文章

熱工具

記事本++7.3.1
好用且免費(fèi)的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強(qiáng)大的PHP整合開(kāi)發(fā)環(huán)境

Dreamweaver CS6
視覺(jué)化網(wǎng)頁(yè)開(kāi)發(fā)工具

SublimeText3 Mac版
神級(jí)程式碼編輯軟體(SublimeText3)
