Vous vous apprêtez à lire un tutoriel rédigé par un membre de ce site. Malgré tout le soin que ce membre a pu apporter au tutoriel, nous ne pouvons pas garantir que les informations contenues sur cette page sont exactes à 100%. Merci de garder cela en tête lorsque vous lirez cette page ;o)
Vous avez maintenant un bon nombre de morceaux de code PHP pour les différentes opérations qu'on peut être amenés à faire. Et je vous propose, pour les organiser, de les ranger tous ensemble dans un objet. Pas de panique, nous allons tout de suite voir ce que c'est.
Un objet est en gros une boîte où l'on peut ranger des
variables et des
fonctions (fonctions qui seront appelées
méthodes). L'avantage de l'objet est premièrement d'organiser le code et ensuite, de pouvoir être transformé en chaîne de caractères pour être inséré dans une variable. Cette propriété est très intéressante lorsqu'on voudra transmettre notre objet (avec toutes ses variables) dans une variable de SESSION.
Et c'est là que ça devient intéressant pour nous car nous allons pouvoir conserver les variables dans lesquelles on enregistre les noms des fichier, groupe et item sélectionnés. Fouiller un fichier
.ini pourra se faire en plusieurs chargements de pages.
On pourra, par exemple, modifier l'item de notre adresse sans donner à nouveau les informations du groupe et du fichier.
Petit schéma de cette technique :

Légende des flèches rouges
- On modifie notre objet.
- On transforme notre objet en chaîne.
- On stocke la chaîne dans la variable de session 'adresse'.
- Sur une autre page, on récupère cette variable.
- On extrait la chaine pour recréer l'objet.
- On peut modifier une ou plusieurs variables de notre objet et recommencer l'opération.
Pour créer un objet, il faut précéder le nom de l'objet de
class :
Code : PHP1
2
3
4
5
6 | <?php
class objet
{
// Méthodes et variables
}
?>
|
L'objet
objet vient d'être déclaré et tout comme les fonctions déclarées, il faut encore les appeler pour pouvoir les utiliser.
Code : PHP1
2
3 | <?php
$obj=new objet();
?>
|
Et enfin pour appeler une méthode ou une variable de
$obj, on utilise la flèche (
->), exemple :
Code : PHP1
2
3
4 | <?php
echo $obj->methode();
echo $obj->variable;
?>
|
Pour créer des variables dans votre objet, il faut utiliser le mot-clé
var :
Code : PHP1
2
3
4
5
6 | <?php
class objet
{
var $variable;
}
?>
|
Et vous pouvez ensuite lui assigner une valeur et la manipuler comme une variable normale, sauf qu'on rajoute
this-> aux noms des variables :
Code : PHP1
2
3
4
5
6
7
8
9 | <?php
class objet
{
var $variable1;
$this->variable1="Bla";
$this->variable1.=" bla";
var $variable2=", stop !";
}
?>
|
Ici, si on utilisait ensuite ce code :
Code : PHP1
2
3
4 | <?php
$obj=new objet();
echo $obj->$variable1.$obj->$variable2;
?>
|
cela afficherait :
Bla bla, stop !
Et enfin, pour créer une méthode :
Code : PHP1
2
3
4
5
6
7
8
9 | <?php
class objet
{
function methode()
{
// contenu de la méthode
}
}
?>
|
Code : PHP 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 | <?php
class objet()
{
// On crée l'objet
}
session_start();
if(isset($_SESSION["objet"]))
$ini_objet=unserialize($_SESSION["objet"]);
else
$ini_objet=new objet();
// Ici le contenu de la page
// Et en fin de page
$_SESSION["objet"]=serialize($ini_objet);
?>
|
Donc on regarde s'il y a quelque chose dans la variable de session : si oui, on crée un objet avec, sinon on crée un objet vierge. On le manipule tout au long de la page et à la fin, on le sauvegarde dans la variable de session. Les fonctions
serialize() et
unserialize() servent respectivement à transformer un objet en chaîne de caractères et inversement, à le recréer.
Pour apprendre à se servir des objets
J'ai passé en revue ce dont on aura besoin pour notre page, mais sachez qu'on peut faire plein de choses avec les objets ; voici des liens pour approfondir vos connaissances dans ce domaine :