Exercice sur les fonctions en php

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Exercice sur les fonctions en php

Re: Exercice sur les fonctions en php

par sirakawa » 26 déc. 2013, 22:39

Je persiste à dire que, comme il s'agit d'un exercice, il faut tenir compte de ce qui a été expliqué en cours.
Il est vraisemblable qu'on s'attend à du if ou du switch, pas à de raffinements sur sprintf...
Et ce qui est fondamental ici, c'est de mettre un return $resultat ou analogue.

Re: Exercice sur les fonctions en php

par Tourterelle » 26 déc. 2013, 19:00

C'est bon j'ai réussis également ! Merci :)

Re: Exercice sur les fonctions en php

par niuxe » 26 déc. 2013, 17:44

relis bien tout ce que j'ai écris dans le post. Montre nous ton code, on pourra t'aider. ;)

Re: Exercice sur les fonctions en php

par Tourterelle » 26 déc. 2013, 17:24

Niuxe** désolé pour l'orthographe :?

Re: Exercice sur les fonctions en php

par Tourterelle » 26 déc. 2013, 17:21

Je comprends votre code niux mais avec moi il ne marche pas, cela ne veut pas s'afficher..

Re: Exercice sur les fonctions en php

par niuxe » 26 déc. 2013, 17:17

Un petit résolu dans le titre du sujet, c'est pas mal ;)

Re: Exercice sur les fonctions en php

par Panninie » 26 déc. 2013, 17:11

C'est bon, tout fonctionne ! Merci beaucoup à tout le monde pour votre aide bien précieuse!

Re: Exercice sur les fonctions en php

par niuxe » 26 déc. 2013, 17:09

Exercice d'une utilité phénoménale...
C'est un début pour un helper. Je t'avoue que c'est pas très évolué comme exo.

Je pense que le but de ce genre d'exo est de savoir utliser php en mode basique. D'ailleurs ça met plusieurs choses en évidence dont une (le fondement de php). Php est un moteur de template html par défaut. Ce qui pour effet de se dire plus tard, pourquoi utiliser Smarty ou autres moteurs de template ? ....

Re: Exercice sur les fonctions en php

par niuxe » 26 déc. 2013, 16:46

Merci beaucoup niuxe, ça fonctionne ! Et en plus j'ai compris les erreurs que je faisais :).
regarde ma dernière réponse, tu as une améioration avec la correction de ma première solution ;). Si tu ne connais pas ces fonctions array_search et in_array, regarde la doc ;)

<<<EDIT
Regarde la solution de Ikikiphénix. De mon côté, je suis parti de ton idée (stocker les tags dans un array). Or la solution de Ikikiphénix est de loin la meilleur idée. Il ne te reste plus qu'à adapter ma solution avec celle d'Ikikiphénix. (sprintf et in_array)
si in_array -> return sprintf avec array_search surement sinon retourne rien

Si tu n'y arrives pas, montre nous ton code et on t'aidera ;)
EDIT;

Re: Exercice sur les fonctions en php

par Panninie » 26 déc. 2013, 16:41

Merci beaucoup niuxe, ça fonctionne ! Et en plus j'ai compris les erreurs que je faisais :).

Re: Exercice sur les fonctions en php

par ikkiphenix » 26 déc. 2013, 16:37

Code : Tout sélectionner

<?php function format_code($string, $tag) { $tags = array('div', 'p', 'h1', 'h2'); $formatted = sprintf("<%s>%s</%s>",$tags["$tag"], $string, $tags["$tag"]); return $formatted; } echo format_code("coucou", 2); ?>

Re: Exercice sur les fonctions en php

par niuxe » 26 déc. 2013, 16:35

oups, j'oublie une clause de l'exo avec une amélioration de mon idée :

Code : Tout sélectionner

function txt2Html($tag,$str){ $tags = array('div','p','h1','h2'); $tab = array( '<div>'.$str.'</div>', '<p>'.$str.'</p>', '<h1>'.$str.'</h1>', '<h2>'.$str.'</h2>', ); return in_array($tag,$tags) ? $tab[array_search($tag,$tags)] : ''; } echo txt2Html('p','Salut');

Re: Exercice sur les fonctions en php

par niuxe » 26 déc. 2013, 16:31

Tu n'as pas besoin de if ou switch. On peut faire plus simple !

Code : Tout sélectionner

function txt2Html($index,$str){ $tab = array( '<div>'.$str.'</div>', '<p>'.$str.'</p>', '<h1>'.$str.'</h1>', '<h2>'.$str.'</h2>', ); return $tab[$index]; } echo txt2Html(1,'Salut');

Re: Exercice sur les fonctions en php

par Panninie » 26 déc. 2013, 16:16

J'ai essayé ce que tu as dis sirakawa en mettant un switch, cependant je dois faire quelque chose de faux car je n'y arrive pas.. Voila mon code :
<?php
function code_formatage($nombre, $texte_balise){
$balises = array(
1 => array("<div> $texte_balise </div>"),
2 => array("<p> $texte_balise </p>"),
3 => array("<h1> $texte_balise </h1>"),
4 => array("<h2> $texte_balise </h2>"),
);
$texte_balise = "";
$nombre=1;
switch($nombre){
case 1 : echo $balises[1] ; break ;
case 2 : echo $balises[2] ; break ;
case 3 : echo $balises[3] ; break ;
case 4 : echo $balises[4] ; break ;
default : echo "Erreur" ; break ;
}
return $texte_balise;
}
code_formatage(3, "Bonjour");
?>

Re: Exercice sur les fonctions en php

par Panninie » 26 déc. 2013, 16:04

Est-ce qu'il est possible de faire cette fonction qu'avec un switch ? Quelque chose du genre :
function code_formatage($i, $a){
$i=1;
switch($i){
case 1 : echo '<div> $a </div>'; break;
case 2 : echo '<p>' $a '<p>'; break;
case 3 : echo '<h1>' $a '<h1>';break;
case 4 : echo '<h2>' $a '<h2>';break;
default : echo "Erreur" ;break;
}
}
code_formatage(6,"Bonjour");
(Cela ne fonctionne pas avec ces codes là..)
Je teste ce que tu dis sirakawa, oui on a vu tout ça, mais je suis pas très très forte en php..