Ersätta åäö med PHP?

PHP

17 svar · 720 visningar · startad av Kosse

Medlem sedan juni 2000162 inlägg
Trådstart#1

Hej, jag lyckas inte ersätta åäö med följande kod:

echo ereg_replace( " å", " å", $string );

Varför fungerar inte detta?, hur gör jag för att det ska fungera?

Medlem sedan apr. 20003 971 inlägg
Medlem sedan juni 2000162 inlägg
#3

Hmm, jag är rätt så ny på PHP så kunde du skriva ett kodexempel så har jag lättare att förstå...

Medlem sedan apr. 20003 971 inlägg
#4

echo htmlentities("en text")

t.ex.

Medlem sedan feb. 20001 270 inlägg
#5

Kosse
Jag förstår inte riktigt vad Du vill göra!? I koden som Du skrev ovan så vill du ersätta alla " å" med " å" vilket för mig är samma sak!

Är det å du vill ersätta med a!? I så fall kan Du använda följande kod för att ersätta både gemener och versaler.. (å, ä och ö)

$s=ereg_replace(197, "a",$s);
$s=ereg_replace(196, "a",$s);
$s=ereg_replace(214, "o",$s);
$s=ereg_replace(229, "a",$s);
$s=ereg_replace(228, "a",$s);
$s=ereg_replace(246, "o",$s);
Medlem sedan juni 2000162 inlägg
#6

Sorry, jag menade att ersätta åäö med deras HTML motsvarigheter, t.ex. ä &aring och &ouml.

Medlem sedan dec. 19996 721 inlägg
#7

Vad Kosse egentligen menar är att han vill ersätta å, ä och ö med å,ä och ö

:e

Medlem sedan juni 2000162 inlägg
#8

Hmm, hur lyckades du skriva &auml utan att det översattes till åäö när artikeln skickats?

Medlem sedan apr. 20003 971 inlägg
#9

Men... använd funktionen som jag sa.

Medlem sedan dec. 19992 555 inlägg
#10

Hmm, hur lyckades du skriva ä utan att det översattes ...

Du får ersätta & med & i ditt inlägg. Vill du att å skall synas skriver du alltså å

Medlem sedan juni 20001 521 inlägg
#11

[kod]

            $s=ereg_replace(197, "Å",$s);
	$s=ereg_replace(196, "Ä",$s);
	$s=ereg_replace(214, "Ö",$s);
	$s=ereg_replace(229, "å",$s);
	$s=ereg_replace(228, "ä",$s);
	$s=ereg_replace(246, "ö",$s);
Medlem sedan apr. 20003 971 inlägg
#12

Alltså, ni är ju helt otroliga. :o

Det finns redan en funktion som gör detta. Den heter HtmlEntities och används så här:
echo htmlentities("En text med mycket å, ä och ö");

Resultatet blir:
En text med mycket å, ä och ö

Dessutom ska man alltid använda str_replace istället för ereg_replace om man inte ska använda reguljära uttryck eftersom str_replace är snabbare. :e

Medlem sedan jan. 20007 697 inlägg
#13

Jag fattar inte heller varför ni inte använder exemplet som Swey la fram redan från början... :q

Medlem sedan juni 20001 521 inlägg
#14

Om man har sina sidor i en databas, typ mySQL, så är det stor risk att det även finns vanlig HTML inblandat.

När jag provade med Htmlentities så översattes även HTML-kommandona så att de inte fungerade som vanligt. Annars håller jag med om att din lösning är smidigast Swey. Jag får förresten inte str_replace att fungera i ovanstående exempel.

Medlem sedan juni 20001 521 inlägg
#15

Hmm... det där ersätter ju även talen 196, 197, 214 osv. med å ä och ö. Hur undviker man detta?

Medlem sedan dec. 19991 749 inlägg
#16

Fel på mitt inlägg.. skriver nåt kul här när jag har kommit på nåt

Medlem sedan juni 20001 521 inlägg
#17

Hmmm... jag har fortfarande inte fått det att fungera som jag vill. Det ska ju helst fungera på Mac också...

men jag försöker väl igen. Och igen.

Medlem sedan juni 20001 521 inlägg
#18

Jag har fortfarande ingen lösning... men det ordnar sig säkert. Är det någon annan som har kommit på något smart?

252 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
121 ms — deklarationer (db)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)
115 ms — ändringar (db)