Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentes Révision précédente | |||
| web:php:chap5 [2023/11/08 15:23] – supprimée - modification externe (Unknown date) 127.0.0.1 | web:php:chap5 [2023/11/08 15:23] (Version actuelle) – ↷ Page déplacée de php:chap5 à web:php:chap5 jcheron | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| + | ====== Chapitre 5 : PHP Objet ====== | ||
| + | ===== - Création de classe ===== | ||
| + | |||
| + | * **$this** Référence à l' | ||
| + | * **$this-> | ||
| + | * Respect de l' | ||
| + | |||
| + | <sxh php; | ||
| + | <?php | ||
| + | namespace models; | ||
| + | class User{ | ||
| + | |||
| + | private $login=""; | ||
| + | private $password=""; | ||
| + | |||
| + | public function getId() { | ||
| + | return $this-> | ||
| + | } | ||
| + | |||
| + | public function setId($id) { | ||
| + | $this-> | ||
| + | return $this; | ||
| + | } | ||
| + | |||
| + | public function getLogin() { | ||
| + | return $this-> | ||
| + | } | ||
| + | |||
| + | public function setLogin($login) { | ||
| + | $this-> | ||
| + | return $this; | ||
| + | } | ||
| + | |||
| + | public function getPassword() { | ||
| + | return $this-> | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | ===== - Instanciation d' | ||
| + | |||
| + | * ne pas oublier d' | ||
| + | * L' | ||
| + | <sxh php; | ||
| + | use models\User; | ||
| + | |||
| + | $aUser=new User(); | ||
| + | </ | ||
| + | |||
| + | |||
| + | ===== - Constructeur explicite ===== | ||
| + | |||
| + | <sxh php; | ||
| + | <?php | ||
| + | namespace use models; | ||
| + | |||
| + | class User{ | ||
| + | |||
| + | private $login=""; | ||
| + | private $password=""; | ||
| + | public function __construct($login="", | ||
| + | } | ||
| + | ... | ||
| + | </ | ||
| + | |||
| + | Pas de surcharge, mais paramètres optionnels | ||
| + | |||
| + | |||
| + | <sxh php; | ||
| + | <?php | ||
| + | use models\User; | ||
| + | |||
| + | $user1=new User(); | ||
| + | $user2=new User(" | ||
| + | $user3=new User(" | ||
| + | </ | ||
| + | |||
| + | ===== - Appels de méthodes ===== | ||
| + | |||
| + | Opérateur -> | ||
| + | |||
| + | <sxh php; | ||
| + | <?php | ||
| + | use models\User; | ||
| + | |||
| + | $user=new User(" | ||
| + | echo $user-> | ||
| + | </ | ||
| + | |||
| + | |||
| + | ===== - Héritage ===== | ||
| + | |||
| + | Mot clé **extends** | ||
| + | |||
| + | <sxh php; | ||
| + | <?php | ||
| + | class Admin extends User{ | ||
| + | |||
| + | ... | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | ==== Référence à la classe parent ==== | ||
| + | |||
| + | **parent:: | ||
| + | |||
| + | <sxh php; | ||
| + | <?php | ||
| + | class Admin extends User{ | ||
| + | |||
| + | public function __construct(){ | ||
| + | parent:: | ||
| + | ... | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | ===== - Méthodes statiques ===== | ||
| + | |||
| + | <sxh php; | ||
| + | <?php | ||
| + | class Utilitaire{ | ||
| + | |||
| + | public static function show($user){ | ||
| + | ... | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | Appel de méthode statique dans la classe | ||
| + | |||
| + | <sxh php; | ||
| + | <?php | ||
| + | class Utilitaire{ | ||
| + | |||
| + | public function test($user){ | ||
| + | ...self:: | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | |||
| + | Appel de méthode statique en dehors de la classe | ||
| + | |||
| + | <sxh php; | ||
| + | <?php | ||
| + | use models\User; | ||
| + | |||
| + | $aUser=new User(" | ||
| + | Utilitaire:: | ||
| + | |||
| + | </ | ||