[RESOLU] Appel function class autre class

Petit nouveau ! | 2 Messages

24 févr. 2014, 11:05

Bonjour à tous,

Je cherche à appeler dans la function de la class "client" un function appartenant à une fonction d'une autre class. Après avoir passé 1h a cherche sur Google la réponse et avoir tenter diverse chose. Je suis toujours sur mon probleme voici mon code. Certes j'aurais pu appliquer mon nettoyage en dehors de la function. Mais en faites c'est un code simplifier pour mieux comprendre la manipulation.
class nettoyage
{
	function telephone($string){
	$string = str_replace('.', '', $string);
		echo $string;
	}
}

class client
{
	function affiche($string)
	{
		echo 'Le numero de telephone du client est '.$nettoyage::telephone($string); // ici je souhaite faire appel
	}
}



$nettoyage 	= new nettoyage;
$client 	= new client;

$client->affiche('03.20.32.00.00');
Merci encore pour votre aide

Petit nouveau ! | 2 Messages

24 févr. 2014, 11:13

Finalement je viens de resoudre mon problème si ca peut servir.
Il faut instancier dans la function...
class nettoyage
{
	function telephone($string){

		$string = str_replace('.', '', $string);

		echo $string;

	}
}

class client
{
	function affiche($string)
	{
		$nettoyage = new nettoyage;

		echo 'Le numero de telephone du client est '.$nettoyage->telephone($string);
	}
}




$client = new client;

$client->affiche('03.20.32.00.00');

Eléphant du PHP | 83 Messages

24 févr. 2014, 11:18

Bonjour,

il suffit de faire comme suit :
class nettoyage
{
        function telephone($string){
        $string = str_replace('.', '', $string);
                return $string;
        }
}

class client
{
        function affiche($string)
        {
                $netto = new nettoyage();
                echo 'Le numero de telephone du client est '. $netto->telephone($string); // ici je souhaite faire appel
        }
}



$nettoyage      = new nettoyage;
$client         = new client;

$client->affiche('03.20.32.00.00');
de plus changé le "echo" de la première classe en "return" car l'echo est dèjà fait dans la classe2.

Bon codage