


Explication détaillée d'exemples d'utilisation d'impléments en php
Les mots-clés d'application des interfaces dans les classes PHP sont interface et implémente. Une interface est une classe abstraite spéciale dont les attributs membres sont tous abstraits ou constants. Les implémentations font principalement référence au nom de la classe, aux méthodes appartenant à la classe et aux paramètres. passé Il joue le rôle de contraintes et de spécifications, un peu comme une classe abstraite abstraite
Les mots-clés d'application de l'interface dans la classe PHP sont interface et implémente Interface est une classe abstraite spéciale dont les attributs membres sont tous abstraits ou constants. Implémente principalement Il contraint et régule le nom de la classe, les méthodes appartenant à la classe et les paramètres transmis, un peu comme une classe abstraite.
Application de l'interface en classe
1. Mot clé : interface
2. >
1. Introduction et création d'interfacesInterface : une classe abstraite spéciale dont les attributs membres sont tous abstraits ou constants.
Règles : 1. Toutes les méthodes de la classe sont abstraites.
2. Il n'est pas nécessaire d'ajouter du résumé pour les méthodes abstraites.
3. L'attribut de la méthode abstraite de l'interface est public.
4. Les attributs des membres doivent être des constantes.
Le code de format est le suivant :
interface demo { const NAME = "常量对象属性"; function myfun1(); //抽象方法 function myfun2(); //抽象方法,不用具体写入逻辑 }
<?php interface Cinema { const film = '加勒比海盗'; public function show(); } class Order implements Cinema { public function show() { echo "影院 接口开放了<br>"; } } $face = new Order(); echo $face->show(); echo Cinema::film;
<?php interface Cinema { public function show(Order $show,$num); } // 显示正常 class Order implements Cinema { public $number='0011排'; public function show(Order $show,$num) { echo $show->number.$num; } } $face= new Order(); $face->show(new Order,$num='3人');//输出 0011排3人
<?php interface Cinema { public function show(); } interface Cinema1 extends Cinema { public function show1(Order1 $object,$num); } class Order implements Cinema1 { public function show() { echo "准备就绪<br>"; } public function show1(Order1 $object,$num) { //var_dump($object); echo $object->number."$num<br>"; } } class Order1 { public $number="0012排"; function fun(){ echo ' ================='; } } $show = new Order1; $show->fun(); $test = new Order(); $test->show(); $test->show1($show,$num='6人'); // 输出 ===============准备就绪0012排6人
<?php interface demo { const NAME = "电影名称"; function fun1(); function fun2(); } interface demo2 { function fun3(); function fun4(); } interface demo3 { const TEST = "这里是测试Test"; function fun5(); } class MyDemo implements demo, demo2 { function fun1() { echo "你好"; } function fun2() { echo "----------"; } function fun3() { echo "我也好<br />"; } function fun4() { echo "大家都好<br />"; } } class YourDemo extends MyDemo implements demo3 { function fun5() { echo "继承类后引用接口"; } } $p = new YourDemo; $p->fun1(); $p->fun2(); $p->fun3(); $p->fun4(); $p->fun5();
Bonjour ----------Moi aussi
Bonjour à tous
Hériter de la classe puis référencer l'interface
Le exemple ci-dessus Nous pouvons voir que les interfaces sont définies à l'aide du mot-clé interface, et le mot-clé Implements est utilisé pour implémenter les méthodes dans l'interface :
<?php //定义接口 interface User{ function getDiscount(); function getUserType(); } class VipUser implements User{ //VIP用户 接口实现 private $discount = 0.8; // VIP 用户折扣系数 function getDiscount() { return $this->discount; } function getUserType() { return "VIP用户"; } } class Goods{ var $price = 88; var $vc; function run(User $vc){ //定义 User 接口类型参数,这时并不知道是什么用户 $this->vc = $vc; $discount = $this->vc->getDiscount(); $usertype = $this->vc->getUserType(); echo $usertype."商品价格:".$this->price*$discount; } } $display = new Goods(); $display ->run(new VipUser); //VIP用户商品价格:70.4
Enfin résumé :
Classes et interfaces abstraites. La différenceinterface est une classe abstraite spéciale, qui peut également être considérée comme la spécification d'un modèle. La différence générale entre une interface et une classe abstraite est la suivante :
1. Si une sous-classe implémente une interface, elle doit implémenter toutes les méthodes de l'interface (qu'elles soient nécessaires ou non) ; , il lui suffit d'implémenter la méthode Just the requise.
2. Si le nom de la méthode défini dans une interface change, alors toutes les sous-classes qui implémentent cette interface doivent mettre à jour le nom de la méthode de manière synchrone et si le nom de la méthode dans une classe abstraite change, le nom de la méthode correspondant à celle-ci ; la sous-classe ne sera pas affectée, elle deviendra simplement une nouvelle méthode (par rapport à l'ancienne implémentation de la méthode).
3. Les classes abstraites ne peuvent être héritées que individuellement. Lorsqu'une sous-classe doit implémenter des fonctions qui doivent être héritées de plusieurs classes parentes, des interfaces doivent être utilisées.
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!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Dans ce chapitre, nous comprendrons les variables d'environnement, la configuration générale, la configuration de la base de données et la configuration de la messagerie dans CakePHP.

PHP 8.4 apporte plusieurs nouvelles fonctionnalités, améliorations de sécurité et de performances avec une bonne quantité de dépréciations et de suppressions de fonctionnalités. Ce guide explique comment installer PHP 8.4 ou mettre à niveau vers PHP 8.4 sur Ubuntu, Debian ou leurs dérivés. Bien qu'il soit possible de compiler PHP à partir des sources, son installation à partir d'un référentiel APT comme expliqué ci-dessous est souvent plus rapide et plus sécurisée car ces référentiels fourniront les dernières corrections de bogues et mises à jour de sécurité à l'avenir.

Pour travailler avec la date et l'heure dans cakephp4, nous allons utiliser la classe FrozenTime disponible.

Pour travailler sur le téléchargement de fichiers, nous allons utiliser l'assistant de formulaire. Voici un exemple de téléchargement de fichiers.

Dans ce chapitre, nous allons apprendre les sujets suivants liés au routage ?

CakePHP est un framework open source pour PHP. Il vise à faciliter grandement le développement, le déploiement et la maintenance d'applications. CakePHP est basé sur une architecture de type MVC à la fois puissante et facile à appréhender. Modèles, vues et contrôleurs gu

Visual Studio Code, également connu sous le nom de VS Code, est un éditeur de code source gratuit – ou environnement de développement intégré (IDE) – disponible pour tous les principaux systèmes d'exploitation. Avec une large collection d'extensions pour de nombreux langages de programmation, VS Code peut être c

Le validateur peut être créé en ajoutant les deux lignes suivantes dans le contrôleur.
