Analyse de l'utilisation du composant Zend_Registry dans Zend Framework

不言
Libérer: 2023-04-01 10:30:01
original
1393 Les gens l'ont consulté

Cet article présente principalement l'utilisation du composant Zend_Registry dans le tutoriel d'introduction du Zend Framework. Il analyse les techniques courantes de configuration, d'obtention, de jugement, de suppression et d'autres opérations du composant Zend_Registry pour implémenter l'enregistrement d'objets sous forme d'exemples. Les amis dans le besoin peuvent s'y référer

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(&#39;Zend_Registry&#39;);
$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>";
Copier après la connexion

Le résultat est :

姓名为:张三
性别为:女
年龄为:13
职业为:学生
爱好为:玩游戏
Copier après la connexion

2. ) définir la méthode et obtenir les données

Syntaxe :

Définir la valeur Zend_Registry::set('index','value')
Obtenir la valeur Zend_Registry : :get('index')

Cas :

<?php
require_once("Zend/Loader.php");
Zend_Loader::loadClass(&#39;Zend_Registry&#39;);
$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>";
Copier après la connexion

Explication : L'effet est équivalent au résultat de nouveau .

3. Registre d'objets setInstance, getInstance

Exemple :

<?php
require_once("Zend/Loader.php");
Zend_Loader::loadClass(&#39;Zend_Registry&#39;);
$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;
Copier après la connexion

Résultat :

Mike
30
male
Copier après la connexion

Description : 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(&#39;Zend_Registry&#39;);
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没有定义";
}
Copier après la connexion

Résultat :

对象注册表name已经定义
对象注册表age没有定义
Copier après la connexion

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(&#39;Zend_Registry&#39;);
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没有定义";
}
Copier après la connexion

Résultat :

执行操作前:
对象注册表name已经定义
对象注册表age没有定义
执行操作后:
对象注册表name没有定义
对象注册表age没有定义
Copier après la connexion

Remarque : Après avoir exécuté la méthode de suppression, les informations d'enregistrement précédentes seront soit il n'en reste plus.

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.

Ce qui précède représente l'intégralité du contenu de cet article. J'espère qu'il sera utile à l'étude de chacun. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois !

Recommandations associées :

À propos de la méthode de traitement des données Json de Zend Framework

À propos de l'utilisation de Loader et PluginLoader dans Zend Analyse du framework

À propos de l'utilisation du contrôleur d'action Zend Framework

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal