Vous êtes ici : start
Cours de PHP orienté objet
Créer une classe Point en PHP et initialiser les variables d'instance
1) Testez le code ci-dessous. Il définit une classe Point puis crée une instance de Point dans la variable $pt. Remarquez la ressemblance avec les classes Java.
2) Tout comme en Java, nous allons rendre les attributs de Point private. Le code ci-dessous génère donc une erreur “Cannot access private property”.
3) Nous ajoutons des getters et des setters
4) Nouvelle méthode : distance qui retourne la distance à l'origine du repère, le type de retour est float (il est indiqué après les deux points : )
5) Ajout d'un constructeur à deux paramètres
6) Variable de classe : nombrePoints
- Remarquez que pour accéder à une variable de classe il faut la précéder de self::
- Pour appeler une variable ou une méthode de classe en dehors de la classe il faudra utiliser de nom de la classe donc Point::
Exercices
Exercice 1 :
Ajoutez d'autres points, un getter static pour récupérer nombrePoint et affichez le nombre d'objets Point.
Exercice 2 :
Ajoutez une variable d'instance z de type float et modifiez le constructeur pour qu'il prenne un troisième paramètre pour pos_z.
Connexion à la base de données et exploitation des données en PHP Orienté Objet
- Importez le fichier coordonnees_db.sql dans une base de données coordonnees_db.
- Au BTS Blanc il y aura un code de connexion à la base de données avec PDO ainsi que des requêtes. Vous ne devez donc pas apprendre à l'écrire par cœur mais vous devez le comprendre dans ses grandes lignes.
7) Ci-dessous le code PHP permettant de se connecter à la base de données à l'aide du PDO (PHP Data Object).
- Remarquez que cela ressemble beaucoup à la version procédurale mysqli_connect vue précédemment.
- Ce code affiche le contenu des lignes de manière peu lisible. Voir le point 7) pour produire un meilleur affichage
- Remplacez 'SELECT * from Point;' par la requête de votre choix pour faire des tests.
8 ) Affichage amélioré
- Ici $row est un tableau associatif récupéré automatiquement grâce au foreach et à l'appel à query
9) Nous allons parcourir les figures en utilisant une autre méthode : les requêtes préparées. Vous comprendrez l'utilité de cette méthode un peu plus longue dans le point n°10.
10) Il est possible de lier (bind) des paramètres à la requête SQL. Il faut pour cela utiliser les deux-points :
- Je ne souhaite afficher que les figures de forme triangle
- Donc on ajoute un WHERE dans la requête SQL. Plutôt que d'écrire WHERE forme='triangle', je préfère rendre le code plus dynamique. On donne un nom précédé des deux-points, exemple avec :maforme . Puis on utilise la fonction bind pour dire à php de remplacer :maforme par le contenu de la variable $forme_choisie dans la requête.
Exercices
Exercice 3 :
- Reprendre le code précédent et faites la même chose pour afficher la liste des points. N'afficher que les points qui ont un x supérieur à 10 grâce à une requête préparée.
Exercice 4 :
- Reprendre le code du point 9) et pour chaque figure, faire une requête qui permet d'afficher tous les points de cette figure.
CORRECTION