Maison  >  Article  >  développement back-end  >  Utilisation de la méthode c de thinkphp

Utilisation de la méthode c de thinkphp

不言
不言original
2018-06-08 16:15:243010parcourir

Cet article présente principalement l'utilisation de la méthode C de thinkphp. Il a une certaine valeur de référence. Maintenant, je le partage avec tout le monde. Les amis dans le besoin peuvent s'y référer

Les amis qui ont utilisé thinkphp savent que C. La méthode () est très couramment utilisée dans l'ensemble du framework. La mise en œuvre de la méthode C est très simple, mais sa fonction est très puissante. Voici une explication détaillée et des exemples d'utilisation de la méthode C()

1. Le rôle de la méthode C

a. Charger et définir la configuration de l'utilisateur, stockée dans la variable statique $_config au sein d'une fonction C

b. la configuration de l'utilisateur (lue depuis $_congig)

2. Analyse des exigences :

1. Définir les variables

1. >

2. 1. Tableau dimensionnel
C(array('DB_PASSWORD'=>'root','DB_USERNAME'=>'root'),'DB');
C('DB.USER_NAME','XIAOCHEN);

C('USER_NAME','小陈');
C(array('USER_NAME'=>'chen','USER_HEIGHT'=>'170'));
2. Lire les variables

Unidimensionnelle : C('USER_NAME');

Bidimensionnel : C(' DB.DB_PASSWORD');

3. Lors du débogage, affichez toutes les informations de configuration

C();

3. Méthode de stockage et pourquoi est-il stocké ainsi ?

Regardons d'abord un problème $arr=array('db'=>'mysql','DB'=>'mysql','Db'=>'mysql') ; À partir de ce tableau, nous pouvons voir que db pointe vers mysql, mais il occupe trois espaces de stockage. Le développement du projet n'est pas réalisé par une seule personne et les habitudes d'écriture de chacun peuvent être différentes, donc afin d'éviter cette situation, le les indices unifiés sont convertis en minuscules (bien sûr, les majuscules sont également acceptables). Puisque le tableau dans le fichier de configuration n'a que deux dimensions au maximum, il suffit de mettre en minuscules l'indice du tableau unidimensionnel

4 .Comment est-il utilisé en combat réel ?

Comme PHP fonctionne sur des tableaux de manière très pratique, le fichier de configuration est généralement écrit dans un fichier de configuration et renvoyé sous la forme d'un tableau

Le format général est :

Écrire les variables en C : C(include 'config.php'); Après l'écriture, C('DB') peut obtenir la valeur

config.php<?  return array(&#39;DB&#39;=>&#39;mysql&#39;,......);
Écrit par l'auteur (nouveau La fonction de ajout dynamique d'une configuration bidimensionnelle)

Exemple de code :

 C(array(&#39;name&#39;=>&#39;mysql&#39;,&#39;password&#39;=>&#39;root&#39;),&#39;db&#39;) 执行后array(&#39;db&#39;=>array(&#39;name&#39;=>&#39;mysql&#39;,&#39;password&#39;=>root))

Ce qui précède est l'intégralité du contenu de cet article. J'espère qu'il sera utile à l'apprentissage de chacun. Pour en savoir plus. contenu connexe, veuillez suivre le site Web PHP chinois !

function C($name=null,$value=null){
  static $_config = array();
   if(!is_null($name)){
    if(is_string($name)){
     if(is_null($value)){
      if(!strpos($name,&#39;.&#39;)){
       $name = strtolower($name);
       return isset($_config[$name]) ? $_config[$name] : null; 
      }else{
       $name = explode(&#39;.&#39;,$name);
       $name[0] = strtolower($name[0]);
       return isset($_config[$name[0]][$name[1]]) ? $_config[$name[0]][$name[1]] : null;
      }
     }else{
      if(!strpos($name,&#39;.&#39;)){
       $_config[strtolower($name)] = $value;
      }else{
       $name = explode(&#39;.&#39;,$name);
       $_config[strtolower($name[0])][$name[1]] = $value;
      }
      return ;
     }
    }elseif(is_array($name)){
     if(is_null($value))
      $_config = array_merge($_config,$name);
     else{
      $_config[$value] = $name;
     }
     return ;
    }
   }else{
       return empty($_config) ? null: $_config;
  }
}
Recommandations associées :

Exemple de méthode R de ThinkPHP


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