À propos de la méthode de Yii Framework pour obtenir toutes les sous-classes de la catégorie

不言
Libérer: 2023-04-01 09:14:02
original
1821 Les gens l'ont consulté

Cet article présente principalement la méthode de Yii Framework pour obtenir toutes les sous-classes de la classification. Il a une certaine valeur de référence. Maintenant, je le partage avec vous. Les amis dans le besoin peuvent s'y référer

Yii est un A. Framework PHP hautes performances basé sur des composants pour le développement d'applications Web à grande échelle. Yii possède presque toutes les fonctionnalités, y compris MVC, DAO/ActiveRecord, I18N/L10N, la mise en cache, la prise en charge AJAX basée sur JQuery, l'authentification des utilisateurs et le contrôle d'accès basé sur les rôles, l'échafaudage, la validation des entrées, les widgets, les événements, les thèmes et les services Web, etc. .

Obtenez toutes les méthodes de sous-catégorie sous la catégorie :

static function getMenuTree($arrCat, $parent_id = 0, $level = 0,$all=True)
 {
  static $arrTree; //使用static代替global
  if(!$all) $arrTree ='';
  if( empty($arrCat)) return FALSE;
  $level++;
  if($level == 1) $arrTree[] = $parent_id;
  foreach($arrCat as $key => $value)
  {
   if($value['parent_cid' ] == $parent_id)
   {
    //$value[ 'level'] = $level;
    $arrTree[] = $value['cid'];
    unset($arrCat[$key]); //注销当前节点数据,减少已无用的遍历
    self::getMenuTree($arrCat, $value[ 'cid'], $level);
   }
  }
  return $arrTree;
 }
Copier après la connexion

La condition préalable pour utiliser la méthode ci-dessus est d'écrire la catégorie dans le cache file , la méthode d'écriture du fichier cache est la suivante :

public function actionIndex2()
 {
 $filepath = Yii::getPathOfAlias('application').'/data/';
 $arr = array();
 $db = Yii::app()->db;
 $listinfo = $db->createCommand("select name,cid,parent_cid,root_cid from item_cat_info")->queryAll();
 foreach($listinfo as $val)
 {
   $arr[$val['cid']] = array('cid'=>$val['cid'],'name'=>$val['name'],'parent_cid'=>$val['parent_cid'],'root_cid'=>$val['root_cid']);
 }

 $applist = "<?php\nreturn ".var_export($arr, true).";\n?>";
 file_put_contents($filepath.&#39;itemcat.php&#39;, $applist);
  }
Copier après la connexion

Ce qui précède est l'intégralité du contenu de cet article, j'espère qu'il sera utile à tout le monde étude, plus de contenu connexe Veuillez faire attention au site Web PHP chinois !

Recommandations associées :

Comment utiliser des méthodes magiques pour implémenter des fonctions d'appel inter-fichiers via le framework Yii

Utiliser le menu de contrôle des autorisations Yii2 rbac

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
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!