22. november 2004 - 20:21
Der er
20 kommentarer og 1 løsning
preg_replace hvordan laves det?
Hejsa jeg har lavet et par stykker som denne: $string = preg_replace("/\[u\](.+?)\[\/u\]/", "<u>$1</u>", $string); Men hvordan kan jeg f.eks. når folk skriver [lastedit] uden afluttende så skal den skifte [lastedit] ud med en mySQL variabel?
Annonceindlæg fra itavis
22. november 2004 - 20:27
#1
<ole> Er [lastedit] det er eneste, der skal udskiftes - eller har du en liste af forskellige 'tags'? /mvh </bole>
22. november 2004 - 20:33
#2
til at starte med er det bare [lastedit] jeg tror godt jeg kan finde ud af at udskifte andre når jeg først finder ud af hvordan [lastedit] kan udskfites.
22. november 2004 - 20:40
#3
Ikke nødvendigt med preg osv, blot: str_replace( "[lastedit]", "en hest", $dintext );
22. november 2004 - 20:42
#4
okay lige et lile spørgsmål til, hvordan skal jeg include den str_replace Hvis jeg vil have den tjekker $text ? or hvad laver en "en hest" der? O_o
22. november 2004 - 20:45
#5
Hvis du har flere tags, kan et array benyttes: $before = array("[lastedit]", "[hest]"); $after = array("sql edit", "sql hest"); $text = str_replace($before, $after, $text);
22. november 2004 - 20:46
#6
Og der kunne din <u> også indgå: $before = array("[lastedit]", "", " "); $after = array("sql edit", "<u>", "</u>");
22. november 2004 - 20:46
#7
$nytext = str_replace( "[lastedit]", $dinmysqltidsvariabel, $dintext );
22. november 2004 - 20:48
#8
hmm jeg har ikke en mySQL variabl, jeg tror kun jeg behøver $dintext. Kan jeg bare lave: $nytext = str_replace ("[lastedit]",$dintext); ?
22. november 2004 - 20:50
#9
Så kan man ligeså godt bruge oversætter funktionen 'strtr()', der er beregnet til netop dette: $transArr = array( "[lastedit]" = "en tekst", "[firstedit]" = "en anden tekst" ); $nyStr = strtr($oprindelig_streng, $transArr);
22. november 2004 - 20:51
#10
... og med variabler: $transArr = array( "[lastedit]" => $variabel_1, "[firstedit]" => $variabel_2 ); $nyStr = strtr($oprindelig_streng, $transArr);
22. november 2004 - 20:51
#11
Ole, strstr() matcher den ikke kun første forekomst ?
22. november 2004 - 20:52
#12
Ooops ... der var fejl i den første (den med strenge). Den skulle se sådan ud: $transArr = array( "[lastedit]" => "en tekst", "[firstedit]" => "en anden tekst" ); $nyStr = strtr($oprindelig_streng, $transArr);
22. november 2004 - 20:52
#13
Jo, derfor er det heller ikke den, jeg har brugt ;o)
22. november 2004 - 20:53
#14
strtr -> 'string translate' strstr -> 'string in string'
22. november 2004 - 20:53
#15
Ahh, de små bogstaver :)
22. november 2004 - 20:54
#16
Ahaaaa ...... dét er bogstaver ...!?!! ;D
22. november 2004 - 21:30
#17
Jeg har prøvet at bruge følgende variabel: $lastedittime=date("d-m-Y G:i ", $test[lastedit]); Men den viser bare: 01-01-1970 1:00 Kan det være fordi det ikke er muligt med date eller?
22. november 2004 - 21:33
#18
lille fejl jeg lavede virker nu :)
22. november 2004 - 21:33
#19
vil i dele points eller hvad?
22. november 2004 - 21:51
#20
1. Brug altid gåseøjne i array-kald (det har dog ikke noget med denne fejl at gøre) 2. Hvad står der i $test["lastedit"], hvis du printer den ud?
22. november 2004 - 21:52
#21
Glem #2 ... jeg havde overset din forrige kommentar :)
Vi tilbyder markedets bedste kurser inden for webudvikling