webForumDet fria alternativet

Rekursiv function ??? hjälp (newbie)

5 svar · 198 visningar · startad av Zacay

ZacayMedlem sedan juli 200164 inlägg
#1

Hej hur kan jag göra så att nedanstående function fungerar?
Jag har prövat på detta sätt vilket fungerar med andra språk, men verkar inte fungera med PHP =)))

Jag vill att functionen ska gå igenom strängen tecken för tecken och ersätta först tecknet med en html kod och sätta ihop det med rukursionen av resten =)
Alltså gör samma sak med resten av strängen och sätter ihop dem .

<?php
$string = "abcde";
function repa($foo) {
return strtr(substr($foo,0),"<img src='images/letters/" . substr($foo,0) . ".gif'>") . function(substr($foo,1));
}
echo(repa($string));
?>

Tack på förhand !!

2basMedlem sedan juni 2001181 inlägg
#2

Kan inte riktigt se nyttan av denna funktion, men då du säger att du vill köra rekursivt, så borde du iallafall ha ett anrop till din funktion i funktionen ;)

Så kanske

<?php
$string = "abcde";
function repa($foo) {
return strtr(substr($foo,0),"<img src='images/letters/" . substr($foo,0) . ".gif'>") . repa(substr($foo,1));
}
                     echo(repa($string));
                     ?>

kunde fungera lite bättre

------------------
Gratis hemsideadress och email => http://www.has.it

ZacayMedlem sedan juli 200164 inlägg
#3

Tack för det, hittade inte det misstaget. =)

Men det var annat som var fel oxå, men nu har jag fixat min funktion iallafall =)))

Den gör så att en sträng bokstäver ersätts med bild kod istället,
jag har bilder för varje bokstav.. =)

nicclasMedlem sedan feb. 20001 050 inlägg
#4

Får man se "programmet", tack!
(Det lär ju inte ha så många likheter med det du skrev i ditt första inlägg ;) )

ZacayMedlem sedan juli 200164 inlägg
#5
<?php
function alphaimage($foo) {
if ($foo == "") {
"";
} else {
return ereg_replace(substr($foo,0,1), "<img align=\"top\" src=\"images/letters/" . substr($foo,0,1) . ".gif\">",substr($foo,0,1)) . alphaimage(substr($foo,1));
}
}
$string = "1234567890ABC";
echo(alphaimage($string));
?>

Här e funktionen !!!
Den ska ersätta varje bokstav med en htmlkod som ska visa bilden för bokstaven, (hmmm var det bra förklarat? *hehe* )

Det finns säkert en smidigare function än ereg_replace men den var iallafall bättre än förra!

Hur som helst fungerar den här skitbra!!!

[Redigerat av Zacay den 09 aug 2001]

nicclasMedlem sedan feb. 20001 050 inlägg
#6

Annars kan man göra såhär :)
<?
$str = "Eller så här";
$str=preg_replace("/(.)/is","<img align=\"top\" src=\"images/letters/\\1.gif>",$str);
echo $str;
?>

136 ms totalt · 3 externa anrop · v20260731065814-full.fb544a5a
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)