|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité de passage
![]() Inscription : décembre 2003 Messages : 13 ![]() |
Bonjour à tous,
J'ai un petit problème que je n'arrive pas à comprendre. Je fais essayer de faire un exemple: Code :
$this->valeur fonctionne par contre et je ne comprend pas pourquoi. c'est comme si, comme je l'avais appelé d'un objet de la classe a, la fonction longueur faisait aussi partie de la classe a. Je ne sais pas si je suis très clair mais si quelqu'un pouvait m'éclairer parce que je n'ai rien trouvé qui explique ce phénomène. |
||
|
|
00
|
|
|
#2 |
|
Invité de passage
![]() Inscription : décembre 2003 Messages : 13 ![]() |
Et si je passe la variable en private, la 2eme solution ne marche plus non plus.
|
|
|
00
|
|
|
#3 |
![]() ![]() Inscription : septembre 2010 Messages : 7 101 ![]() |
dans B $objet n'existe pas, et tu peux pas acceder a $this en statique
qu'est ce que tu voudrais avoir au final ?
__________________
http://blog.stealth35.com/ |
|
|
00
|
|
|
#4 |
|
Invité de passage
![]() Inscription : décembre 2003 Messages : 13 ![]() |
Mais pourquoi puis je accéder à $this alors que je suis dans une fonction d'une autre classe?
|
|
|
00
|
|
|
#5 | |
![]() ![]() Inscription : septembre 2010 Messages : 7 101 ![]() |
Citation:
par que ton mode d'erreur est trop bas, et que une fonction static dois etre définie via le mot clé "static" public static function longueur la tu appelle statiquement une fonction non statique travaille en E_ALL | E_STRICT
__________________
http://blog.stealth35.com/ |
|
|
|
00
|
|
|
#6 | |
|
Expert Confirmé
![]() Inscription : mars 2005 Messages : 2 817 ![]() |
Citation:
D'ailleurs si on exécute ton script en mode strict on obtient :Strict Standards: Non-static method b::longueur() should not be called statically, assuming $this from incompatible context in C:\dev\www\Tests\oop.php on line 11 Bref, à éviter.
__________________
Un problème exposé clairement est déjà à moitié résolu Keep It Smart and Simple |
|
|
|
00
|
|
|
#7 |
![]() ![]() Inscription : septembre 2010 Messages : 7 101 ![]() |
tu peux le faire mais c'est une erreur de type Strict Standards, $this reste dans le scope de la méthode verif de A
__________________
http://blog.stealth35.com/ |
|
|
00
|
|
|
#8 | ||
|
Expert Confirmé
![]() Inscription : mars 2005 Messages : 2 817 ![]() |
Citation:
Citation:
__________________
Un problème exposé clairement est déjà à moitié résolu Keep It Smart and Simple |
||
|
|
00
|
|
|
#9 |
|
Invité de passage
![]() Inscription : décembre 2003 Messages : 13 ![]() |
Merci beaucoup, cela s'éclaire un peu dans ma tete.
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com