<?php
interface Item
{
function affiche();
}
class ItemEntier implements Item
{
Var $contenu ;
function __Item($val)
{
$this->contenu = $val;
}
function affiche()
{
print $this->contenu;
}
} // Fin ItemEntier
class ItemChaine implements Item
{
var $contenu ;
function __Item($val)
{
$this->contenu = $val;
}
function affiche()
{
print $this->contenu;
}
} //Fin ItemChaine
class ListeItem
{
Public $array_item;
Public $nb_item=0;
function add_Item (Item $unItem)
{
$this -> array_item[] = $unItem;
$this -> nb_item++;
}
function get_item($numItem)
{
return $this -> array_item[$numItem];
}
}
//créé chaque item à inserer dans la liste
$item1 = new ItemEntier(5);
$item2 = new ItemChaine("coucou");
$item3 = new ItemEntier(9);
$item4 = new ItemChaine("test");
//Création de la liste
$liste = new ListeItem();
$liste -> add_Item($item1);
$liste -> add_Item($item2);
$liste -> add_Item($item3);
$liste -> add_Item($item4);
//pour chaque élément de la lite
For ($i=0;i<$liste->nb_item;i++)
{
//on lance la function affiche de l'item
if ($liste->get_Item($i) instanceof ItemEntier )
echo "<br>item de type entier:";
elseif ($liste->get_item($i) instanceof ItemChaine )
echo "<br>item de type Chaine :";
else echo "<br>item de type inconnu:";
$liste->get_Item($i)->affiche();
}
?>
Je ne comprends pas pourquoi il me signale une erreur pour le i++
Merci d'avance