Comment appeler une class php ?

Fermé
moi23 - 7 oct. 2009 à 23:27
 Anonyme - 8 oct. 2009 à 00:13
Bonsoir,

Je souhaite exploiter quelques méthodes d'une class php qui ne se trouve pas dans le même répertoire que mes fonctions. Je voudrais donc appeler une class dans une fonction. Il faut utiliser un include pour appeler la class ?

Comme ceci ?

function fonction1(){
include("../rep1/class.php");
....
}

Ce n'est pas un bricobi ?


Merci d'avance.
A voir également:

6 réponses

Effectivement, je ne comprenait pas le mot :D

Non c'est surtout ce que tu execute qui ralenti, pas le fait de déclarer une classe de plus ou de moins.
Simplement, si tu ne l'utilise que sur une page de ton site, inclue la dans cette page uniquement et pas dans toutes.
Tu peut aussi la déclarerdans la fonction en include comme tu fait, mais c'est pas conseillé car ca pose souvent des problèmes, a essayer.

Sinon pour l'exploiter, je ne vais pas faire de cours objet mais pour resumer, une classe est un objet qui contient des fonctions.
on declare une classe, comme on fait avec une fonction :

 Class class_de_test {
	function __construct(  ) {		
		echo "la classe est crée !";
	}

	function mafonction1( $txt ) {
		echo "text 1 :".$txt;
	}
	function mafonction2( $txt ) {
		echo "text 2 :".$txt;
	}

 }



Ensuite on crée autant d'objet qu'on veut a partir de cette classe, chacun sera indépendant :
$obj1 = new class_de_test();
$obj2 = new class_de_test();


Ensuite on peut appeler une methode (=fonction) de l'objet avec :
$obj1->mafonction1("toto");


Et sans créer les objets, on peut aussi directement appeler une fonction a l'interieur comme ceci :
class_de_test::mafonction1("toto");

C'est cela qu'on apelle la methode "statique", c'est a dire sans créer l'objet.

Si tu connais pas la partie objet de PHP hesite pas a te renseigner dans la doc tu comprendra mieux :)
Evidemment mon exemple est très simple, l'interet des object est tout autres quand ils sont complexes.
2
P@t@ch0n Messages postés 565 Date d'inscription mercredi 15 avril 2009 Statut Membre Dernière intervention 28 décembre 2009 85
8 oct. 2009 à 00:04
Il existe une fonction magique très pratique de php qui appellera automatiquement le fichier de ta classe.
Ce qui implique évidemment une classe = un fichier

Voir __autoload()
2
Salut,

Tu peut faire cela mais c'est un peu bizarre car la classe restera locale a ta fonction, pourquoi ne pas faire l'include directement dans ta page appelante ?

La classe ne gênera pas tant qu'elle ne sera pas appelée de toute façon,
ensuite dans ta fonction du pourra l'utiliser en créant un objet avec ta classe $obj = new classe();,
ou bien l'appeller statiquement si tu veut juste utiliser une méthode
0
Merci beaucoup pour ta réponse.

J'ai pensé à l'inclure dans la page appelante, mais le probleme cette page fait 1600 lignes, je pensais que ça pouvait avoir un ralentissement de traitement par php. Sinon statiquement, cette théogonique fonctionne comment, copier/coller la class ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Ce soir j'invente des mots :-)
Je voulais dire : "cette technique".
0
1000 Merci pour toutes explications. Je vais inclure la class dans la page concernée, car seule cette page l’utilise.
Pour l’exploitation je m’en sors plutôt pas mal pour un débutant :-) j’ai un très bon livre pour les nuls avec le site de php y’a tout pour être heureux.

Concernant les statiques c’est super comme technique. J’avais ça dans le livre, mais je suis passé à coté lol.

@ P@t@ch0n
Géniale cette fonction, ça donne envi de programmer d’avantage :-)

Merci encore à vous deux et bonne fin de soirée.
0