PHP - fonction qui fonctionne pas
Résolu
Bonjour,
Je rencontre des problèmes avec cette fonction que j'ai écrit...
Et je comprends pas pourquoi ...
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>Test de la fonction insert</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<?php function insert ($str, $carac, $pos)
{
If (strlen($str)<$pos)
{
$str = $str + $carac;
}
else
{
$temp = $str;
$str = substr($temp, 0, $pos-1) + $carac + substr($temp, $pos);
}
return ($str);
}
?>
</head>
<body>
<?php
$var="rue";
$var2=insert($var, "o", 2);
echo $var2;
?>
</body>
</html>
Je rencontre des problèmes avec cette fonction que j'ai écrit...
Et je comprends pas pourquoi ...
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>Test de la fonction insert</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<?php function insert ($str, $carac, $pos)
{
If (strlen($str)<$pos)
{
$str = $str + $carac;
}
else
{
$temp = $str;
$str = substr($temp, 0, $pos-1) + $carac + substr($temp, $pos);
}
return ($str);
}
?>
</head>
<body>
<?php
$var="rue";
$var2=insert($var, "o", 2);
echo $var2;
?>
</body>
</html>
Configuration: Windows XP Firefox 2.0.0.14
2 réponses
-
Bonjour
Je ne sais pas si cela change quelque chose mais essaie de retirer les parenthèse au tour du "$str" après "return"-
-
-
@onesdfah oui, m****, c'est vrai, mais c'est que je coder pas mal en VB aussi, c'est pour ça, bon je test et jte tiens au courent...
-
@nino11ben en vb c'est & pour concaténer :oP
-
@onesdfNon, en VB tu peux concaténer avec le "+" aussi ^^
Bon, ça marche, par contre faut rajouter un "-1" dans la concaténation dans le "else", à la fin, faut mettre pos-1... enfin, ça marche, merci ^^
-
-
$str = substr($temp, 0, $pos-1) . $carac . substr($temp, $pos);
devrait être
$str = substr($temp, 0, $pos-1) . $carac . substr($temp, $pos-1);