Maison  >  Article  >  développement back-end  >  Exemple de fonction personnalisée PHP pour implémenter l'affectation de tableau assign() au modèle et l'affectation de variable extract() à la fonction de modèle

Exemple de fonction personnalisée PHP pour implémenter l'affectation de tableau assign() au modèle et l'affectation de variable extract() à la fonction de modèle

jacklove
jackloveoriginal
2018-06-22 17:01:281890parcourir

Cet article présente principalement la fonction personnalisée PHP pour implémenter l'affectation de tableau assign() au modèle et l'affectation de variable extract() à la fonction de modèle. Il peut simuler la fonction d'affectation de variable de modèle dans le framework tp et implique l'affectation de tableau orientée objet PHP. . Pour les compétences opérationnelles, les amis dans le besoin peuvent se référer à

Cet article décrit l'exemple de fonction personnalisée PHP pour implémenter l'affectation de tableau assign() au modèle et l'affectation de variable extract() à la fonction de modèle. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :

Ici, simule les opérations d'allocation et d'affectation de variables du modèle de framework tp.

extract($arr); //Fonction d'extraction : importez des variables du tableau dans la table des symboles actuelle, en utilisant les clés comme variables et les valeurs comme valeurs !
compact(); // — Créez un tableau, comprenant les noms de variables et leurs valeurs

class base{
  public $array;
  public $key;
  public $val;
  public function assign($key,$val){
    if(array($val)){
      $this->array["$key"] = $val;
    }else{
      $this->array["$key"] = compact($val);
    }
  }
  public function display($tpl){
    $this->assign($this->key,$this->val);
    extract($this->array);
    if(file_exists($tpl)){ //模板存在就加载文件。
      include $tpl;
    }
  }
}
class indexcontroller extends base{
  public function index(){
    $arr = array('a'=>'aaaaaaa','b'=>array('a'=>'111111','b'=>'22222','c'=>'3333'),'c'=>'ccccccc','d'=>'dddddd','e'=>'eeeee');
    $str = '我是字符串';
    $this->assign('arr',$arr);
    $this->assign('str',$str);
    $this->display('index.html');
  }
}
$base = new base;
$base->index();

Articles qui pourraient vous intéresser :

Analyse des idées de conception de base et des méthodes d'implémentation de PHP imitant tp pour implémenter le framework mvc

Exemple de process_php détaillé d'installation yii2

Opérations d'ajout, de suppression, de modification et de requête de base de données mises en œuvre par le framework CI (CodeIgniter)

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!

Déclaration:
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