Copyright

Annonces Google

Tutoriels Informatiques

TICE & Multimédias

Math-pour-Informatiques

Anglais pour débutants

Nous somme sur Facebook

Utilisateurs en ligne

Users: 3 Guests, 1 Robot
Gearbest  promotion

Annonces Google



1 – Les classes php

Une classe php c’est quoi ? Tout simplement un bout de code php permettant de créer en une ligne de code qu’on appelle (instanciation ) des objets php doté d’un certain nombre de variables et méthodes.
Depuis la version 5 du langage  php la poo a été beaucoup améliorée : ajout des constructeurs et destructeurs, la possibilité de déclarer une méthode ou variable sous forme public, private, protected…

Exemple :

Voici un exemple simple utilisant un construteur :
class voitures{
function__construct(){
echo' la voiture est neuve';
}
}

 Cette 5 ème version de php nous donne aussi la possibilité de détruire un objet à l’aide de la méthode __destruct(), cette dernière appliquée à l’objet le détruit complètement :

Exemple

class voitures {
function__construct(){
echo' la voiture est neuve';
}
function__destruct(){
}
}
Comme en C++ et Java… on peut aussi utiliser les paramètres, afin de donner la possibilité aux utilisateur de construire et parametrer leur propres objets. En voici un exemple simple:

Exemple :

<?php
class voitures
{
public $marque;
public function __construct($param){
$this->marque=$param;
}
public function afficher()
{
echo "la marque de la voiture est ".$this->marque;
}
}
$mavoiture = new voitures('Renault');
echo $mavoiture->afficher();
?>

Remarque :

Comme tout les autres langages de programmation orienté objet on peut assigner plusieurs attributs au constructeur de la classe voir l’exemple ci-dessous:

Exemple :

Dans cet exemple le constructeur possède deux attributs à savoir : la marque et la couleur :

 


Ce qui affiche :
la marque de la voiture est :Peugeot
la couleur de la voiture es :Rouge

2 – Travaux pratiques : création d’une calculatrice

Nous allons maintenant utiliser les classes php5 pou créer une calculatrice en se basant sur l’architecture MVC ( modèle view controller)

2 – 1 Crétion du View ou frontend

Le frontend contient le formulaire que doit remplire l’utilisateur :

Voici son code :

    <form method="POST" action="controller.php">
    <input type="text" name="x"><br>
    <input type="text" name="y"><br>
    <input type="submit" name="submit" value="+">
    <input type="submit" name="submit" value="-">
    <input type="submit" name="submit" value="*">
    <input type="submit" name="submit" value="/">
    </form>

Ce formulaire affiche deux zones de texte et quatre bouton  « + » « – »  » *  »  » /  »  pour effectuer les opérations habituelles de calcul.

2 – 2 Création du modèle

Le modèle contient les classes : une classe que nous allons nomé calcul avec constructeur ayant deux paramètres ( les deux variables postées au moment ou l’utilisateur effectue l’opération de calcul ) et 4 méthodes (l’addition, la soustraction, la multiplication, et la division) voici le code complet :

Code du fichier classes.php

<?php
    class calcul{
    public $t1;
    public $t2;
    function __construct($a,$b){
    $this->t1=$a;
    $this->t2=$b;
    }
    function add(){
    return $this->t1 + $this->t2;
    }
    function sous(){
    return $this->t1 - $this->t2;
    }
    function mult(){
    return $this->t1 * $this->t2;
    }
    function div(){
    return $this->t1/$this->t2;
    }
    }
    ?>

Code du fichier controller.php

<?php
    include('classes.php');
    $x=$_POST['x'];
    $y=$_POST['y'];
    $calc=new calcul($x,$y);
    if($_POST['submit']=='+'){
    echo$calc->add();
    }
    if($_POST['submit']=='-'){
    echo$calc->sous();
    }
    if($_POST['submit']=='*'){
    echo$calc->mult();
    }
    if($_POST['submit']=='/'){
    echo$calc->div();
    }
    echo"<br><a href=\"index.htm\">retour</a>";
    ?>

Télécharger la calculatrice php    <–>      Tester la calculatrice php

 

3 – Tutoriel vidéo

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Time limit is exhausted. Please reload the CAPTCHA.