《PHP應用:Zend Framework入門教程之Zend_Registry組件用法詳解》要點:
本文介紹了PHP應用:Zend Framework入門教程之Zend_Registry組件用法詳解,希望對您有用。如果有疑問,可以聯系我們。
本文實例講述了Zend Framework中Zend_Registry組件用法.分享給大家供大家參考,具體如下:PHP應用
1.對象注冊表PHP應用
入門案例:PHP應用
<?php require_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>";
結果為:PHP應用
姓名為:張三 性別為:女 年齡為:13 職業為:學生 愛好為:玩游戲
2.set()方法和get()方法設置數據、獲取數據PHP應用
語法:PHP應用
設置值Zend_Registry::set('index','value')
獲取值Zend_Registry::get('index')PHP應用
案例:PHP應用
<?php require_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的結果.PHP應用
3.對象注冊表setInstance、getInstancePHP應用
例子:PHP應用
<?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;
結果:PHP應用
Mike 30 male
說明:通過setInstance方法,就可以用對象的方式設置其中的值了,然后通過getInstance來獲取值.PHP應用
4.isRegistered()來實現索引是否有值的判斷.PHP應用
案例:PHP應用
<?php require_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沒有定義"; }
結果:PHP應用
對象注冊表name已經定義 對象注冊表age沒有定義
說明:PHP應用
如果定義了,可以檢測出來.PHP應用
5.刪除靜態注冊表PHP應用
Zend_Registry::_unsetInstance()方法刪除靜態注冊表PHP應用
案例:PHP應用
<?php require_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沒有定義"; }
結果:PHP應用
執行操作前: 對象注冊表name已經定義 對象注冊表age沒有定義 執行操作后: 對象注冊表name沒有定義 對象注冊表age沒有定義
說明:執行完刪除方法之后,之前的注冊信息就沒有了.PHP應用
小結:PHP應用
這就是Zend_Registry的幾個常用的方法與案例.通過注冊表可以實現很多普通變量無法實現的功能.PHP應用
更多關于zend相關內容感興趣的讀者可查看本站專題:《Zend FrameWork框架入門教程》、《php優秀開發框架總結》、《Yii框架入門及常用技巧總結》、《ThinkPHP入門教程》、《php面向對象程序設計入門教程》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧匯總》PHP應用
希望本文所述對大家基于Zend Framework框架的PHP程序設計有所幫助.PHP應用
轉載請注明本頁網址:
http://www.snjht.com/jiaocheng/2450.html