Avatar billede gedekid Nybegynder
16. september 2009 - 10:23 Der er 11 kommentarer og
1 løsning

Replace i array

Hej eksperter,

skal se om jeg kan forklare mit problem tydeligt.

Jeg har et array hvori jeg skal tjekke nogle bestemte ord og erstatte disse med noget andet...

Arrayet sættes med

$popupitems = $db->get_results($q,"ARRAY_A");

og det er altså så i $popupitems at jeg skal tjekke efter ordene

VARIABEL eller SUPRA og så ændre dette til
VARIABEL<br /> eller SUPRA<br />

da det jo er inde i et array kan jeg ikke bruge en traditionel needle, haystack replace.
Avatar billede foo85 Novice
16. september 2009 - 10:35 #1
måske noget


foreach($popupitems as $p){
str_replace("VARIABEL","VARIABEL</br>"$p);
str_replace("SUPRA","SUPRA</br>"$p);
}
Avatar billede gedekid Nybegynder
16. september 2009 - 10:43 #2
den gjorde det ikke helt :(
Avatar billede foo85 Novice
16. september 2009 - 10:47 #3
Der har også sneget sig en lille fejl ind.. Der mangler et , foran $p i de to replace linjer
Avatar billede gedekid Nybegynder
16. september 2009 - 10:50 #4
Den havde jeg havde jeg opdaget :) .. men det hjalp ikke...
Avatar billede foo85 Novice
16. september 2009 - 10:58 #5
det kan være det er fordi vi skal have værdien med...

foreach($popupitems as $p => $value){
str_replace("VARIABEL","VARIABEL<br />", $value);
str_replace("SUPRA","SUPRA<br />",$value);
}
Avatar billede gedekid Nybegynder
16. september 2009 - 11:03 #6
Det ser ud til at fungere, men skal ha' lavet lidt justering... hvis jeg skriver

print str_replace("VARIABEL","VARIABEL<br />", $value);

så får jeg bare ArrayArrayArrayArray (der er 4 emner i arrayet)
Avatar billede repox Seniormester
16. september 2009 - 11:42 #7
Prøv lige at dumpe et print_r() på det array du får dannet?
Avatar billede gedekid Nybegynder
16. september 2009 - 11:47 #8
Sådan ser det ud:

Array ( [name] => RT880 [title] => RT880 [desc] => MULDENVARIABEL
Rød Laumans falstagsten [prodtype] => roof ) Array ( [name] => RT881 [title] => RT881 [desc] => MULDENVARIABEL
Rød-engoberet Laumans falstagsten [prodtype] => roof ) Array ( [name] => RT886 [title] => RT886 [desc] => MULDENVARIABEL
Xenon-grå engoberet Laumans falstagsten [prodtype] => roof ) Array ( [name] => RT888 [title] => RT888 [desc] => MULDENVARIABEL
Antik-engoberet Laumans falstagsten [prodtype] => roof )

der fungerer det jo sådan set som det skal... Jeg tror at problemet ligger andetsteds...
Avatar billede repox Seniormester
16. september 2009 - 11:56 #9
Det er jo fordi du har arrays i et array.

Du skal gøre noget ala:


  foreach($popupitems as $key => $value)
  {
    foreach($value as $newKey => $newValue)
    {
      $value[$newKey] = str_replace("MULDENVARIABEL", "MULDENVARIABEL<br />", $newValue);

    }

    $popupitems[$key] = $value;
  }



utestet, men idéen er der...
Avatar billede gedekid Nybegynder
16. september 2009 - 12:01 #10
Exactly!! Works like a dream! :)

Jeg takker mange gange!

Smider du et svar ?
Avatar billede repox Seniormester
16. september 2009 - 12:06 #11
Det fik du her
Avatar billede gedekid Nybegynder
16. september 2009 - 12:13 #12
point til dig! Takker for hjælpen...
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