PHP retour de fonction

Résolu
capa57 Messages postés 383 Statut Membre -  
zoby44 Messages postés 868 Statut Membre -
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. resalut Messages postés 784 Date d'inscription   Statut Membre Dernière intervention   55
     
    --salut,
    $test = parag("premier","deuxieme");
    La culture est la seule richesse que l'on ne peut perdre
    0
  2. capa57 Messages postés 383 Statut Membre 13
     
    rohhhhhhhhhh les " " , j'oublie souvent ça :D

    Merci ;)
    0
  3. zoby44 Messages postés 868 Statut Membre 199
     
    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