Cet article porte principalement sur l'optimisation du code framework par Kaka. Ce n'est que l'idée d'optimisation de Kaka.
Regardez ici la méthode loadFile dans thinkphp/library/think/Config.php
Cela n'a-t-il pas l'air un peu moins élégant ?
Étant donné que la méthode parse
est utilisée à la fin de la méthode, c'est le mode usine mentionné précédemment pour charger d'autres types de fichiers de configuration.
Alors pourquoi ne pas laisser ce mode usine charger également les fichiers de configuration de type PHP et yaml.
À ce stade, vous devez créer des fichiers php et des fichiers yaml dans le répertoire thinkphp/library/think/config/driver
.
Créez d’abord un fichier php.
Et en imitant les trois autres types de fichiers, dans le type de fichier php, il vous suffit de déterminer s'il s'agit d'un fichier, puis d'importer le fichier.
Les fichiers de configuration PHP du framework sont tous sous forme de tableaux, donc la méthode d'analyse dans le fichier Php.php peut renvoyer directement l'attribut config.
Commencez les tests amusants ! La valeur de CONFIG_EXT a été configurée comme yaml dans le fichier env auparavant.
C'est-à-dire que lors de la lecture du fichier de configuration dans le répertoire config, seuls les fichiers avec l'extension de type yaml peuvent être lus.
Vous devez donc d'abord modifier cette valeur, et vous pourrez l'utiliser après avoir écrit la classe d'usine de type yaml plus tard.
Pour faciliter les tests, ajoutez une nouvelle configuration dans le répertoire de configuration
Commentez ensuite le code qui détermine les types php et yaml dans la méthode lodeFile dans la classe de configuration
Lire la configuration config/app.php dans le contrôleur
Imprimer le résultat
Imprimer Il n'y a aucun défaut dans les résultats, ce qui signifie qu'il n'y a rien de mal avec le code que nous avons simplement optimisé. La même chose est vraie pour yaml. Il vous suffit de convertir les données finales en tableau et de les renvoyer.
Ce qui précède est le processus d'analyse de l'optimisation par Kaka du code source sous-jacent pour le chargement des fichiers de configuration du framework. Si vous ressentez un inconfort, vous pouvez le signaler dans la zone de commentaires.
La persévérance dans l'apprentissage, la persévérance dans le blogging et la persévérance dans le partage sont les convictions auxquelles Kaka a toujours adhéré depuis ses débuts. J'espère que les articles de Kaka sur le grand Internet pourront vous apporter un peu d'aide. Je m'appelle Kaka, à la prochaine fois.
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!