Cet article résume les ajustements apportés à la conception des classes de configuration dans la dernière version 5.2.
Annuler la configuration de la convention
Le fichier de configuration de la convention (convention.php) a été officiellement annulé dans la dernière version. Avant cela, il avait été déplacé du noyau. package dans le référentiel d’application (répertoire racine). Étant donné que les configurations par défaut ont toutes été utilisées comme configurations d'attributs par défaut des bibliothèques de classes associées, les fichiers de configuration conventionnels ne sont plus nécessaires.
Du point de vue d'une configuration pratique du projet, la configuration par défaut est fournie dans le répertoire de configuration de l'entrepôt d'applications, ce qui rend les modifications plus claires et la configuration peut être modifiée directement.
Annuler les paramètres dynamiques
Il est recommandé que la classe de configuration soit utilisée uniquement pour la lecture et non pour le réglage dynamique, afin de faciliter l'utilisation unifiée du centre de configuration gestion dans le futur. Si des extensions de configuration tierces (telles que Yaconf) sont utilisées, la configuration des paramètres n'est pas prise en charge. Par conséquent, la classe de configuration ne fournit plus de méthode pour définir dynamiquement un certain paramètre de configuration, mais en raison des besoins de certaines configurations de base de données, l'utilisation d'un certain fichier de configuration par lots est conservée.
L'utilisation suivante n'est plus prise en charge
Config::set('app.app_name', 'think');
L'utilisation des paramètres par lots (fusion) est conservée
Config::set([ 'app_name' => 'think', 'default_timezone' => 'Asia/Shanghai', ], 'app');
Opération de lecture de configuration unifiée
La méthode pull précédente pour lire la configuration de premier niveau a été annulée. La nouvelle version utilise la méthode get pour lire toutes les valeurs de configuration et le système jugera automatiquement.
Dans le même temps, le préfixe par défaut des paramètres de configuration (configuration de premier niveau) est annulé. Tous les paramètres de configuration sans point sont considérés comme lisant la configuration de premier niveau.
// 读取app配置 Config::get('app'); // 读取具体配置必须改为 Config::get('app.app_name'); // 不再支持原来的读取 Config::get('app_name');
La classe Config ne prend plus en charge la lecture des tableaux
La classe Config n'utilise plus l'interface ArrayAccess, elle ne prend donc plus en charge la lecture des tableaux.
Le routage et la configuration de l'URL sont indépendants
Les paramètres de configuration liés au routage et aux requêtes d'URL sont configurés indépendamment en tant que fichier de configuration route.php au lieu du fichier de configuration app.php.
Le site Web PHP chinois propose un grand nombre de tutoriels d'introduction ThinkPHP gratuits, tout le monde est invité à apprendre.
Cet article est reproduit à partir de : https://blog.thinkphp.cn/962855
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!