fonction qui appelle une fonction de la même classe

fonction qui appelle une fonction de la même classe - PHP - Programmation

Marsh Posté le 06-11-2012 à 17:48:25    

Hello all
 
J'ai débuté le PHP il y a peu dans le but de créer des minis applications internes pour le boulot.
 
Je me créé une classe qui servira souvent, mais j'ai un soucis lorsque dans la classe, j'appelle une fonction qui est déjà dedans. PHP me retourne :

Citation :

( ! ) Fatal error: Call to undefined function get_id()


Comment faire pour utiliser cette fonction ?
 
Exemple du code :

Code :
  1. <?php
  2. class MaClasse {
  3.     public function get_id() {
  4.          // code de ma fonction
  5.     }
  6.     public function create() {
  7.         $id = get_id();
  8.         // suite du code de cette fonction
  9.     }
  10. }
  11. ?>


 
J'ai volontairement mis un exemple simple, l'idée est là :)
 
Merci !


---------------
These Violent Delights Have Violent Ends
Reply

Marsh Posté le 06-11-2012 à 17:48:25   

Reply

Marsh Posté le 06-11-2012 à 17:54:44    

Maclasse.get_id() ?


---------------
www.pronovolley.fr Faites vos prono sur la ligue de Volley et défiez vos amis. Des cadeaux en fin d'année  www.levoll.fr
Reply

Marsh Posté le 06-11-2012 à 18:03:24    

Réponse rapide, [:sire de botcor:1] ! Merci.
 
Ca a finalement fonctionné avec :
MaClasse::get_id();
 
Ainsi qu'avec :
self::get_id();


---------------
These Violent Delights Have Violent Ends
Reply

Marsh Posté le 06-11-2012 à 18:05:04    

$this->get_id() plutot


---------------

Reply

Marsh Posté le 06-11-2012 à 18:09:36    

Ca fonctionne également, mais concrètement ça change quoi ?


---------------
These Violent Delights Have Violent Ends
Reply

Marsh Posté le 06-11-2012 à 18:55:58    

this va faire reference  à l'objet courant.
 
self appelle cete methode sans cette référence. Honnêtement, je t'invite à lire des tutoriaux pour avoir quelques bases de programmation objet


---------------

Reply

Marsh Posté le 06-11-2012 à 19:02:24    

Je suis en train d'acquérir ces bases. Je lis les tutos du site du 0, tout en codant cette petite appli interne pour le côté travaux pratiques...


---------------
These Violent Delights Have Violent Ends
Reply

Marsh Posté le 08-11-2012 à 18:09:31    

self c'est pour les méthodes statiques.
 
Si tu n'as pas de modifier static, alors c'est toujours $this.


---------------
Directeur Technique (CTO)
Reply

Marsh Posté le 08-11-2012 à 19:45:14    

Ok, c'est noté.
 
C'est bien d'apprendre en pratiquant, mais je serais pas contre de vrais cours. Faudrait que j'en parle à mon manager...
 
Sinon mon appli est presque terminée, il me reste juste à inclure des tests pour vérifier que les trucs entrés par l'utilisateur sont valides...


---------------
These Violent Delights Have Violent Ends
Reply

Marsh Posté le 08-11-2012 à 21:32:10    

Si tu veux voir 2/3 trucs sympas en PHP, lis donc cette page :
http://goo.gl/XmBD2
 
Les exemples sont succincts et éloquents, j'y aborde le typage dynamique, les tableaux associatifs, les interfaces, les classes abstraites, les traits, les méthodes magiques, ... etc.


Message édité par CyberDenix le 08-11-2012 à 21:32:45

---------------
Directeur Technique (CTO)
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed