php: l'appel de méthode d'une classe à partir d'un autre

  • super67
  • Born
  • Born
  • No Avatar
  • Inscription: Aoû 22, 2007
  • Messages: 3
  • Status: Offline

Message Août 22nd, 2007, 7:06 am

salut,

Je me demandais comment je peux accéder à la méthode d'une classe à partir d'un autre:

par exemple:

disons que j'ai une méthode appelée getNumRows () dans un MySQL.class.php
Comment puis-je accéder à cette méthode d'une autre méthode de contrôle () dans functions.class.php

i espoir était clair :D

Merci!
  • Anonymous
  • Bot
  • No Avatar
  • Inscription: 25 Feb 2008
  • Messages: ?
  • Loc: Ozzuland
  • Status: Online

Message Août 22nd, 2007, 7:06 am

  • spork
  • Brewmaster
  • Silver Member
  • Avatar de l’utilisateur
  • Inscription: Sep 22, 2003
  • Messages: 6129
  • Loc: Seattle, WA
  • Status: Offline

Message Août 22nd, 2007, 7:25 am

Vous utilisez le (->) l'opérateur public d'accéder à des fonctions et variables d'une classe instanciée.

[php] classe MySQLClass
(
getNumRows fonction publique ()
(
return $ quelque chose;
)
)

classe MyFunctions
(
vérifier la fonction publique ()
(
$ object = new MySQLClass ();
num_rows $ = $ object-> getNumRows ();
)
) [/ php]
The Beer Monocle. Classy.
  • super67
  • Born
  • Born
  • No Avatar
  • Inscription: Aoû 22, 2007
  • Messages: 3
  • Status: Offline

Message Août 22nd, 2007, 8:53 am

qui fonctionne bien, mais si je veux réutiliser une instance existante au lieu d'ouvrir un nouveau.

par exemple:
i faire usage de ces deux classes dans un script appelé user.php qui a déjà ouvert une instance.how puis-je passer cette instance à mon enregistrement () méthode functions.class.php intérieur (au lieu de l'instanciation d'une nouvelle classe mysql)?

Merci :D
  • spork
  • Brewmaster
  • Silver Member
  • Avatar de l’utilisateur
  • Inscription: Sep 22, 2003
  • Messages: 6129
  • Loc: Seattle, WA
  • Status: Offline

Message Août 22nd, 2007, 9:30 am

Vous devez simplement être en mesure de passer la variable d'instance comme d'un argument à la fonction et de l'utiliser directement dans la fonction. Si cela ne fonctionne pas, vous pouvez essayer en passant par l'objet de référence .

Vous pourrez trouver ci-après utiles ainsi:
Les classes et les objets (PHP5)
The Beer Monocle. Classy.
  • joebert
  • Sledgehammer
  • Genius
  • No Avatar
  • Inscription: Fév 10, 2004
  • Messages: 13455
  • Loc: Florida
  • Status: Offline

Message Août 22nd, 2007, 9:41 am

Si theres une instance déjà en existence, vous pouvez vous référer à celui-ci une fonction à l'aide de la mondial mot-clé.

http://www.php.net/global
Strong with this one, the sudo is.
  • super67
  • Born
  • Born
  • No Avatar
  • Inscription: Aoû 22, 2007
  • Messages: 3
  • Status: Offline

Message Août 23rd, 2007, 6:14 am

merci pour guys.the indice problème est désormais résolu!
  • dev567
  • Born
  • Born
  • No Avatar
  • Inscription: Fév 25, 2010
  • Messages: 1
  • Status: Offline

Message Février 25th, 2010, 11:22 am

Je crois que c'est ce que tu voulais dire:

Code: [ Select ]

class MyClass {

  function Func1() {
    return '1';
  }

  function Func2() {
    echo $this->Func1();
  }

}

$c = new MyClass();
$c->Func2(); // prints: 1
  1. class MyClass {
  2.   function Func1() {
  3.     return '1';
  4.   }
  5.   function Func2() {
  6.     echo $this->Func1();
  7.   }
  8. }
  9. $c = new MyClass();
  10. $c->Func2(); // prints: 1

Afficher de l'information

  • Total des messages de ce sujet: 7 messages
  • Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 188 invités
  • Vous ne pouvez pas poster de nouveaux sujets
  • Vous ne pouvez pas répondre aux sujets
  • Vous ne pouvez pas éditer vos messages
  • Vous ne pouvez pas supprimer vos messages
  • Vous ne pouvez pas joindre des fichiers
 
 

© 2011 Unmelted, LLC. Ozzu® est une marque déposée de Unmelted, LLC