02. februar 2004 - 20:10
Der er
11 kommentarer
Fjern ulovlige tegn fra filnavn
Jeg har en variabel der angiver filnavne. Variablen må altså ikke indeholde ulovlige tegn som. Variablen kunne f.eks. se således ud: $filnavn = "noget tekst . , & ' * \" / ( ) osv. osv."; Hvordan får man php til at fjerne alle disse og andre ulovlige tegn?
Annonceindlæg tema
Cloud & AI
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
02. februar 2004 - 20:21
#1
Følgende stump kode erstatter de mest gængse danske bogstaver og tegn med _ Du kan jo selv skrive flere på. <? // gør filnavnet pænt $name = str_replace(" ", "_", str_replace("Å", "å", str_replace("Æ", "æ", str_replace("Ø", "ø", str_replace("å", "aa", str_replace("æ", "ae", str_replace("é", "e", str_replace("ø", "oe", str_replace("&", "og", str_replace(".", "_", "$name" )))))))))); // skriver variablen med små bogstaver $name = strtolower($name); ?>
02. februar 2004 - 20:30
#2
Ville nok gøre således (taget fra manualen): $phrase = "You should eat fruits, vegetables, and fiber every day."; $healthy = array("fruits", "vegetables", "fiber"); $yummy = array("pizza", "beer", "ice cream"); $newphrase = str_replace($healthy, $yummy, $phrase);
02. februar 2004 - 20:34
#3
Definer hvad du mener er lovlige tegn: $filnavn = eregi_replace('[^a-z0-9_.-]','_',$filnavn);
02. februar 2004 - 20:34
#4
Lidt nemmere at definere de tilladte tegn, og så fjerne resten. i dette er det kun bogstaver, tal og underscore der er tilladt. $streng = "strengæøåÆØÅ,.-_"; $nystreng = eregi_replace("[^a-z0-9_]","",$streng);
02. februar 2004 - 20:36
#5
Det der er indeni [^ ] skal være de lovlige tegn, og dem der så ikke er lovlige bliver så erstattet med '_'. Husk at hvis du vil have '-' til at være med, så skal det stå som sidste tegn.
02. februar 2004 - 20:39
#6
Ja, men hvad så hvis man vil have 'æ' skiftet ud med 'ae', 'å' med 'aa' osv. ?
02. februar 2004 - 20:41
#7
googleplex>> Så skal du forbi noget str_replace som I har gang i, men det står der ikke defineret nogle steder :-)
02. februar 2004 - 20:43
#8
Skitse: $s="blåbærgrød"; $a["æ"]="ae"; $a["ø"]="oe"; $a["å"]="aa"; $s = strtr($s,$a); print $s;
02. februar 2004 - 20:52
#9
Jeg brugte den løsning som erikjacobsen og htm foreslog. hvis I lige laver et svar hver, så får I point. Tak for hjælpen!
02. februar 2004 - 21:14
#10
Giv point til Erikjacobsen, det er vist ham der har fortjent dem :-) Han var jo også hurtige end mig :-)
02. februar 2004 - 21:15
#11
Tak, jeg samler ikke på point.
Vi tilbyder markedets bedste kurser inden for webudvikling