Avatar billede nicocarlos Nybegynder
02. november 2005 - 01:31 Der er 3 kommentarer og
2 løsninger

Ændre billede til tal problem

Hejsa

Jeg har følgende:
$test="
<IMG src='1.gif'>
<IMG src='2.gif'>
<IMG src='3.gif'>
<IMG src='4.gif'>
<IMG src='5.gif'>
";

Så vil jeg gerne have tjekket den variabel igennem og lave en funktion som bytter <IMG src='1.gif'> ud med 1, <IMG src='2.gif'> ud med 2 osv.

Sådan så hvis jeg laver en print, så står der 12345

Håber der er en som kan hjælpe
Avatar billede olebole Juniormester
02. november 2005 - 02:03 #1
<ole>

$test = preg_replace("/\s*<IMG src='(\d{1,2}).gif'>\s*/i", "$1", $test);

Den tager op til '99.gif'. Skal du bruge større tal, skriver du f.eks:

$test = preg_replace("/\s*<IMG src='(\d{1,3}).gif'>\s*/i", "$1", $test);

- der tager op til '999.gif'  ;o)

/mvh
</bole>
Avatar billede nicocarlos Nybegynder
02. november 2005 - 02:04 #2
har fundet ud af måske at bruge:
$url = str_replace('<IMG src='1.gif'>',"1",$url);

Men kan man tilføje flere derinde, så <IMG src='1b.gif'> også bliver = 1, eller skal man så lave en hel ny linje?

med venlig hilsen

nicocarlos
Avatar billede nicocarlos Nybegynder
02. november 2005 - 02:06 #3
det var ikke så meget fordi jeg lige skal bruge tal, det er faktisk bogstaver men det var bare for at få et eksempel på hvordan jeg kunne gøre det. F.eks. sådan så ordet hus og mus bliver begge lavet om til et 1 tal. Skal man så lave en ny linje for hvert ord man vil have lavet om til 1 eller?
Avatar billede steven_ Nybegynder
02. november 2005 - 06:28 #4
Du kan gøre dine mange str_replace-funktioner lidt kortere vha. arrays.

<?php
$url = str_replace(array("<img src=\"1.gif\" alt=\"1.gif\" />",
                        "<img src=\"1.gif\" alt=\"1.gif\" />",
                        "<img src=\"1.gif\" alt=\"1.gif\" />",
                        "<img src=\"1.gif\" alt=\"1.gif\" />",
                        "<img src=\"1.gif\" alt=\"1.gif\" />",
                        "<img src=\"1.gif\" alt=\"1.gif\" />",
                        "<img src=\"1.gif\" alt=\"1.gif\" />"),
                  "1",
                  $url);
?>
Avatar billede olebole Juniormester
02. november 2005 - 15:00 #5
Generelt er det en skidt idé at spørge om noget helt andet end det, man skal bruge. Så er det stort set umuligt at hjælpe  :)

Når så man er ude i et replacement-array, kan man vel ligeså godt bruge funktionen, der er specielt beregnet til 'oversættelser':
    http://dk2.php.net/manual/en/function.strtr.php  ;o)

Tak for points  :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester