PHP str_replace() funktion
Eksempel
Erstatte tegnene "world" i strengen "Hello world!" med "Shanghai":
<?php echo str_replace("world","Shanghai","Hello world!"); ?>
Definition og brug
str_replace() funktionen erstatter nogle karakterer i en streng med andre karakterer (med forskel på store og små bogstaver).
Denne funktion skal følge følgende regler:
- Hvis den søgte streng er en array, vil den returnere en array.
- Hvis den søgte streng er en array, vil den søge og erstatte for hver element i arrayen.
- Hvis der samtidig skal søges og erstattes i en array, og der er færre elementer til erstatning end der er fundne elementer, vil de overskydende elementer blive erstattet med en tom streng
- Hvis der søges i en array, men erstattes med en streng, vil den erstatte strengen gælde for alle fundne værdier.
Kommentar:Denne funktion tager højde for store og små bogstaver. Brug str_ireplace() Funktionen udfører søgning uden at tage højde for store og små bogstaver.
Kommentar:Denne funktion er binært sikker.
grammatik
str_replace(find,replace,string,count)
Parametre | Beskrivelse |
---|---|
find | Obligatorisk. Angiver værdien, der skal findes |
replace | Obligatorisk. Angiver erstatningen find værdien af værdien i |
string | Obligatorisk. Angiver den søgte streng. |
count | Valgfri. Variabel til at tælle erstatningsantal. |
Tekniske detaljer
Returværdi | Returnerer en streng eller et array med erstatningsværdier. |
PHP version | 4+ |
Opdateringslog |
I PHP 5.0 blev der tilføjet count parametre. Før PHP 4.3.3, var der en parameter til denne funktionens find og replace Når alle parametre er arrays, kan der opstå problemer, hvilket kan føre til en tom find Indekset ændres ikke, når den interne pegefinger ikke ændres til replace Bliver ignoreret på array. Nyere versioner vil ikke have dette problem. Fra PHP 4.0.5 og frem til de fleste parametre kan være et array. |
Flere eksempler
Eksempel 1
Brug af array med count Str_replace() funktionens variabel
<?php $arr = array("blue","red","green","yellow"); print_r(str_replace("red","pink",$arr,$i)); echo "Erstattelsesantal: $i"; ?>
Eksempel 2
Brug af str_replace() funktion med færre elementer, der skal erstattes, end de fundne elementer:
<?php $find = array("Hello","world"); $replace = array("B"); $arr = array("Hello","world","!"); print_r(str_replace($find,$replace,$arr)); ?>