Jusqu'à hier, je pensais que ces deux méthodes d'accès à une classe étaient identiques. Google n'a rien trouvé (ou alors mes mots-clés étaient mauvais). Quelle est la différence entre accéder à une classe en définissant une nouvelle instance de la classe plutôt que d'appeler directement les méthodes de la classe.
J'ai du mal à comprendre ce que je viens de demander, car je n'ai pas la moindre idée de ce que je demande, mais permettez-moi de vous donner quelques exemples pour vous aider.
Depuis que j'utilise des classes en PHP, je définis une instance de la classe et j'accède aux méthodes à partir de cette variable. Voici un exemple :
<?php
class Myclass
{
public function my_method() {
return "This is my method";
}
}
$myclass = new Myclass();
echo $myclass->my_method(); // output: This is my method
?>
Quelle est la différence entre cela et ceci ?
<?php
class Myclass
{
public function my_method() {
return "This is my method";
}
}
echo Myclass::my_method(); // output: This is my method
?>
J'espère avoir été suffisamment clair. Si ce n'est pas le cas, un bref résumé serait le suivant : quelle est la différence entre la création d'une nouvelle instance d'une classe et l'appel d'une méthode de la classe avec "$class->mymethod() ;", ou simplement l'appel direct de la méthode comme suit : "$class->mymethod() ;", "$class->mymethod() ;": "Myclass::mymethod() ;"?
Merci d'avance.