Bonjour,

Je n'arrive pas à comprendre pourquoi le code ne fonctionne pas.
C'est un code issu d'un cours :
mon fichier index.php :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
<?php
 
spl_autoload_register(function ($class) {
    include 'MesProduits/' . $class . '.php';
});
 
use MesProduits\Produit ;
 
$imprimante=new Produit("imprimante",1,800);
 
$imprimante->ajouterProduit();
$imprimante->supprimerProduit();
echo $imprimante;
et mon fichier de la classe :
dans un répertoire MesProduits :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
 
<?php
 
namespace MesProduits ;
 
class Produit 
{
    function __construct(string $nom,int $quantite,float $prix,bool $rupture=false)
    {
 
        $this->nom=$nom;
        $this->quantite=$quantite;
        $this->prix=$prix;
        $this->rupture=$rupture;
 
    }
 
    function getNom()
    {
        return $this->nom;
 
    }
 
    function setNom($valeur)
    {
        if (!is_string($valeur)){
            echo "la propriété nom doit être un chaîne de caractères";
        }
         else {
            $this->nom=$valeur;
        }
 
    }
    function getQuantite()
    {
        return $this->quantite;
 
    }
 
    function setQuantite($valeur)
    {
        if (!is_integer($valeur)){
            echo "La propriété quantite doit être un entier";
        }
         else {
            $this->quantite=$valeur;
        }
 
    }
 
    function getprix()
    {
        return $this->prix;
 
    }
 
    function setprix($valeur)
    {
        if (!is_numeric($valeur)){
            echo "La propriété prix doit être un nombre";
        }
         else {
            $this->prix=$valeur;
        }
 
    }
 
 
    function __toString()
    {
        return "Nom: ".$this->nom.'<br>'.
               "Prix: ".$this->prix.'<br>'.
               "Quantité: ".$this->quantite.'<br>'.
               (($this->rupture)?"Rupture de stock<br>":"En stock<br>");
    }
    function ajouterProduit()
    {
        $this->quantite+=1;
        if($this->quantite>0) $this->rupture=false;
    }
    function supprimerProduit()
    {
        $this->quantite-=1;
        if($this->quantite<=0){
            $this->quantite=0;
            $this->rupture=true;
        }
    }
 
}
Je n'arrive pas à comprendre où se trouve mon erreur ?

Pourriez-vous m'aider

Stéphane