PHP retour de fonction

Résolu
Bonjour,
voici mon code

function parag($paragraphe1, $paragraphe2)
{
echo "<p>$paragraphe1</p> <p>$paragraphe2</p>";
}
$test = parag(premier,deuxieme);
echo $test;

il me renvoi ceci:

Notice: Use of undefined constant premier - assumed 'premier' in C:\wamp\www\td2 php\td4.php on line 77

Notice: Use of undefined constant deuxieme - assumed 'deuxieme' in C:\wamp\www\td2 php\td4.php on line 77

premier

deuxieme

et si je veux passer en parametre plusieurs mots de suite par exemple
$test = parag(premier paragraphe a tester ,deuxieme test);
echo $test;

il me renvoi ceci

Parse error: parse error in C:\wamp\www\td2 php\td4.php on line 77

ça vient d'ou ?
Faut-il aussi que je déclare mes paramètres , le type ? (char par exemple)
Configuration: Windows XP Internet Explorer 6.0

3 réponses

  1. --salut,
    $test = parag("premier","deuxieme");
    La culture est la seule richesse que l'on ne peut perdre
    0
    1. rohhhhhhhhhh les " " , j'oublie souvent ça :D

      Merci ;)
      0
      1. Salut. Il n'y a pas de type à déclarer en PHP (enfin à part les array).
        Les paramètres à entrer, sont soit des variables (qui commencent par $), soit des numériques, soit des chaines de caractères (qui sont entourées par des ").
        Pour qu'un fonction retourne une variable, il faut utiliser le mot-clé return/

        Donc ta fonction :

        <?php
        function parag($paragraphe1, $paragraphe2) {
        
        $maVar = '<p>'.$paragraphe1.'</p><p>'.$paragraphe2.'</p>';
        return $maVar;
        
        }
        
        $premier = "Ma chaine 1";
        $deuxieme= "Ma chaine 2";
        
        $test = parag($premier,$deuxieme);
        echo $test;
        
        
        $test2 = parag("Ma chaine 1","Ma chaine 1");
        echo $test2;
        ?>
        

        Ou encore

        <?php
        function parag($paragraphe1, $paragraphe2) {
        
        $maVar = '<p>'.$paragraphe1.'</p><p>'.$paragraphe2.'</p>';
        echo $maVar;
        
        }
        
        $premier = "Ma chaine 1";
        $deuxieme= "Ma chaine 2";
        
        parag($premier,$deuxieme);
        
        parag("Ma chaine 1","Ma chaine 1");
        
        ?>
        

        Les deux affichent le même résultat.
        La première fonction retourne une chaine, qu'il faut stocker dans une variable. La seconde ne retourne rien, donc on l'appel directement.
        0