Maison > cadre php > PensezPHP > le corps du texte

L'utilisation intelligente de Countable dans les conteneurs ThinkPHP

咔咔
Libérer: 2020-10-12 13:58:17
original
1621 Les gens l'ont consulté
«

Cet article expliquera un point de connaissance impopulaire que vous ne comprendrez jamais si vous ne regardez pas le code source, à savoir l'utilisation de countTable

.

6. Analyse de la classe de conteneurs de conteneurs : utilisation intelligente de Countable

À propos de Countable Je n'ai jamais pensé à l'opportunité d'écrire le contenu sous la forme d'un article et de le montrer à tout le monde, mais lorsque j'ai lu le code source plus tard, un grand nombre d'applications Countable sont apparues.

Afin que tout le monde comprenne chaque point technique, Kaka l'a quand même écrit.

Ce point de connaissance a juste pour but de vous montrer comment l'utiliser. La relation avec le nombre sera mentionnée plus loin dans l'article.

Dans le fichier thinkphp/library/think/Container.php, vous pouvez directement voir que l'interface Countable est utilisée et implémentée !

Lutilisation intelligente de Countable dans les conteneurs ThinkPHP
Insérer la description de l'image ici

En arrivant à l'interface Countable, nous ne pouvons voir qu'une seule méthode qui est count().

D'après le commentaire Count elements of an object dans le code, on peut savoir que cette interface est un élément de l'objet de calcul

Quand on regarde le code source, il faut d'abord lire ses commentaires. Même si vous ne connaissez pas l'anglais, il existe un logiciel de traduction ! Vous fournira une meilleure compréhension.

Lutilisation intelligente de Countable dans les conteneurs ThinkPHPApprenez-en plus en vous basant sur les instructions de la documentation PHP.

La documentation indique que lorsque vous exécutez la méthode count(), cela équivaut à exécuter la abstract public Countable::count ( void ) : int méthode abstraite ci-dessus.

Lutilisation intelligente de Countable dans les conteneurs ThinkPHPCas pratiques

Si vous vous contentez de parler mais ne le faites pas, tout n'aboutira à rien si vous parlez et faites-le, vous réussirez ; immédiatement. Démarrez simplement

et créez un nouveau fichier kaka/container/countableTest.php, puis ajoutez le contenu suivant

Lutilisation intelligente de Countable dans les conteneurs ThinkPHP puis apprenez à utiliser Countable dans le fichier application/index/controller/Container.php.

Veuillez noter l'utilisation ici, utilisez count() directement

Lutilisation intelligente de Countable dans les conteneurs ThinkPHPLutilisation intelligente de Countable dans les conteneurs ThinkPHP

count() dans Countable est le même que d'habitude ; count() ) méthodes

Au fait, jetez un œil à l'explication dans le code source PHP

Vous pouvez voir que le premier paramètre peut être un tableau ou un dénombrable

La compréhension de Kaka est que Countable réécrit simplement la méthode de comptage dans SPL afin de faciliter la personnalisation des règles statistiques dont vous avez besoin.

<span style="display: block; background: url(https://my-wechat.mdnice.com/point.png); height: 30px; width: 100%; background-size: 40px; background-repeat: no-repeat; background-color: #282c34; margin-bottom: -7px; border-radius: 5px; background-position: 10px 10px;"></span><code class="hljs" style="overflow-x: auto; padding: 16px; color: #abb2bf; display: -webkit-box; font-family: Operator Mono, Consolas, Monaco, Menlo, monospace; font-size: 12px; -webkit-overflow-scrolling: touch; padding-top: 15px; background: #282c34; border-radius: 5px;">int count ( mixed <span class="hljs-variable" style="color: #d19a66; line-height: 26px;">$array_or_countable</span> [, int <span class="hljs-variable" style="color: #d19a66; line-height: 26px;">$mode</span> = COUNT_NORMAL ] )<br/></code>
Copier après la connexion

L'étape suivante consiste à analyser les conteneurs dans le framework et à remonter étape par étape jusqu'à la cause première.

«

La persévérance dans l'apprentissage, la persévérance dans les blogs et la persévérance dans le partage sont les convictions auxquelles Kaka a toujours adhéré depuis sa carrière. J'espère que les articles de Kaka dans l'immense Internet. Je peux vous apporter un peu d'aide Silk. 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!

É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