Visibilité des membres
<<<
Visibilité des méthodes Les classes et les objets (PHP 5)
>>>

5.10.5 Visibilité
5.10 Les classes et les objets (PHP 5)
5 Référence du langage
 Manuel PHP

Visibilité des membres
->Visibilité des méthodes

5.10.5.2 Visibilité des méthodes

Les méthodes des classes doivent être définies en tant que publiques, privées ou protégées. Les méthodes sans déclaration seront automatiquement définies comme étant publiques.

Déclaration d'une méthode

<?php
/**
* Définition de MyClass
*/
class MyClass
{
    
// Les contructeurs doivent être publiques
    
public function __construct() { }

    
// Déclaration d'une méthode publique
    
public function MyPublic() { }

    
// Déclaration d'une méthode protégée
    
protected function MyProtected() { }

    
// Déclaration d'une méthode privée
    
private function MyPrivate() { }

    
// Celle-ci sera publique
    
function Foo()
    {
        
$this->MyPublic();
        
$this->MyProtected();
        
$this->MyPrivate();
    }
}

$myclass = new MyClass;
$myclass->MyPublic(); // Fonctionne
$myclass->MyProtected(); // Erreur fatale
$myclass->MyPrivate(); // Erreur fatale
$myclass->Foo(); // Public, Protected et Private fonctionnent


/**
* Définition de MyClass2
*/
class MyClass2 extends MyClass
{
    
// Celle-ci sera publique
    
function Foo2()
    {
        
$this->MyPublic();
        
$this->MyProtected();
        
$this->MyPrivate(); // Erreur fatale
    
}
}

$myclass2 = new MyClass2;
$myclass2->MyPublic(); // Fonctionne
$myclass2->Foo2(); // Public et Protected fonctionnent, non pas Private
?>

<< Visibilité des méthodes >>
Visibilité des membres Visibilité Les classes et les objets (PHP 5)