L'exemple de cet article décrit l'utilisation du composant Zend_Registry dans Zend Framework. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :
1. Registre d'objets
Cas de démarrage :
<?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>";
Le résultat est :
姓名为:张三 性别为:女 年龄为:13 职业为:学生 爱好为:玩游戏
2. La méthode set() et la méthode get() définissent les données et obtiennent les données
Syntaxe :
Définissez la valeur Zend_Registry::set('index','value')
Obtenez la valeur Zend_Registry::get('index')
Cas :
<?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>";
Explication : L'effet est équivalent au résultat du neuf.
3. Registre d'objets setInstance, getInstance
Exemple :
<?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;
Résultat :
Mike 30 male
Explication : Grâce à la méthode setInstance, vous pouvez définir la valeur sous la forme d'un objet, puis obtenir la valeur via getInstance.
4.isRegistered() pour déterminer si l'index a une valeur.
Cas :
<?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没有定义"; }
Résultat :
对象注册表name已经定义 对象注册表age没有定义
Remarque :
S'il est défini, il peut être détecté.
5. Supprimer le registre statique
La méthode Zend_Registry::_unsetInstance() supprime le registre statique
Cas :
<?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没有定义"; }
Résultat :
执行操作前: 对象注册表name已经定义 对象注册表age没有定义 执行操作后: 对象注册表name没有定义 对象注册表age没有定义
Remarque : Après avoir exécuté la méthode de suppression, les informations d'enregistrement précédentes auront disparu.
Résumé :
Voici plusieurs méthodes et cas couramment utilisés de Zend_Registry. De nombreuses fonctions qui ne peuvent pas être réalisées avec des variables ordinaires peuvent être réalisées via le registre.
J'espère que cet article sera utile à la programmation PHP de chacun basée sur le framework Zend Framework.
Pour des explications plus détaillées sur l'utilisation du composant Zend_Registry dans le tutoriel d'introduction du Zend Framework, veuillez prêter attention au site Web PHP chinois !