[Alg] ISO-8859-1 vs UTF-8

Pagina: 1
Acties:
  • 763 views sinds 30-01-2008
  • Reageer

Acties:
  • 0 Henk 'm!

Anoniem: 99022

Topicstarter
Hallo,

ik ben bezig met een website, die haalt data uit een database, zet dit in php om naar xml, die daar dmv xslt (serverside) html van uitpoept.
Nu zit ik dus rond te kijken, welke encoding en waarom. De website gaat om met meerdere talen (Engels, Duits, Frans en Nederlands).
Nu denk ik dus dat ik ISO-8859-1 moet gaan gebruiken overal, maar zie het verschil niet met UTF-8, kan iemand mij dit uitleggen?

Acties:
  • 0 Henk 'm!

  • Sendy
  • Registratie: September 2001
  • Niet online
UTF-8 is ook voor een deel gelijk aan iso-8859-1, alleen UTF-8 is uitgebreider.

Waarom denk je dat je iso-8859-1 moet gebruiken? UTF-8 kan toch ook Engels, Duits, Frans en Nederlands, maar ook Japans, Cyrillisch, etc.

[ Voor 3% gewijzigd door Sendy op 03-07-2006 16:32 ]


Acties:
  • 0 Henk 'm!

  • PhysicsRules
  • Registratie: Februari 2002
  • Laatst online: 31-03 07:26

PhysicsRules

Dux: Linux voor Eenden

Voor zover ik weet kan ISO-8859-1 het euroteken niet aan. Het is daarom ooit vervangen voor ISO-8859-15. Dus als je al ISO... wilt gebruiken, gebruik die dan.

Acties:
  • 0 Henk 'm!

  • Tsjilp
  • Registratie: November 2002
  • Niet online

Tsjilp

RS[I]ds

http://www.joelonsoftware.com/articles/Unicode.html

^^ Interressant leesvoer over de verschillende charactersets. Bij ons binnen het bedrijf dient ALLES in UTF-8 aangeleverd te worden. IMHO de meest gangbare characterset.

Raar... Is zo gek nog niet


Acties:
  • 0 Henk 'm!

  • Icelus
  • Registratie: Januari 2004
  • Niet online
ISO-8859-1 is een 8-bit codering 'speciaal' voor West-Europese talen.
UTF-8 is een codering van Unicode codepoints waarbij één of meer bytes gebruikt worden per codepoint voor de codering.

Als je alleen West-Europese talen wilt gebruiken kun je het beste 8859-1 of de "nieuwere" 8859-15 gebruiken. Wil je ook - makkelijker - in de toekomst andere talen/tekens gebruiken is UTF-8 een goede keus.

In ISO-8859-15 zijn de volgende tekens vervangen:
Uit ISO-8859-1: ¤ ¦ ¨ ´ ¸ ¼ ½ ¾
vervangen door: € Ŝ š Ž ž Œ œ Ÿ

[ Voor 20% gewijzigd door Icelus op 03-07-2006 16:43 ]

Developer Accused Of Unreadable Code Refuses To Comment


Acties:
  • 0 Henk 'm!

Anoniem: 99022

Topicstarter
Ok, thnx voor jullie duidelijke uitleg, utf8 is ook makkelijker voor gebruik ivm UTF8 encode/decode functies in PHP :)

Acties:
  • 0 Henk 'm!

  • djc
  • Registratie: December 2001
  • Laatst online: 28-07-2022

djc

Ik zou voor (nieuwe) applicaties altijd voor UTF-8 gaan. Unicode is toch een beetje de toekomst, en UTF-8 is een werkpaard dat volgens mij een zeer grote ondersteuning geniet.

Rustacean


Acties:
  • 0 Henk 'm!

  • Confusion
  • Registratie: April 2001
  • Laatst online: 01-03-2024

Confusion

Fallen from grace

Tsjilp schreef op maandag 03 juli 2006 @ 16:37:
http://www.joelonsoftware.com/articles/Unicode.html

^^ Interressant leesvoer over de verschillende charactersets. Bij ons binnen het bedrijf dient ALLES in UTF-8 aangeleverd te worden. IMHO de meest gangbare characterset.
UTF-8 is geen karakterset. De karakterset is de unicode karakterset. UTF-8 is een encoding.

Wie trösten wir uns, die Mörder aller Mörder?


Acties:
  • 0 Henk 'm!

  • CH4OS
  • Registratie: April 2002
  • Niet online

CH4OS

It's a kind of magic

Hou er rekening mee, dat je DB (waarschijnlijk MySQL) soms gek doet, als je jouw tables / dbs geen UTF-8 als characterset opgeeft... In browsers kan het dan voorkomen dat je niet het gewenste tekentje ziet... ;) Denk dan bijv. aan ë en zo die niet correct word weergegeven. Of je gooit er een
htmlenities($var) overheen natuurlijk, voordat je het in de DB propt :9

Heb zelf dan trouwens nog problemen, maar goed, dat zal wel komen omdat ik dan wat fout doe denk ik... ;) Of het ligt aand e MySQL versie... :)

Acties:
  • 0 Henk 'm!

  • djc
  • Registratie: December 2001
  • Laatst online: 28-07-2022

djc

GJ-tje schreef op maandag 03 juli 2006 @ 18:00:
Heb zelf dan trouwens nog problemen, maar goed, dat zal wel komen omdat ik dan wat fout doe denk ik... ;) Of het ligt aand e MySQL versie... :)
Als je PHP gebruikt zijn er nog een paar dingen die kunnen helpen:

Helemaal in het begin deze neerzetten:
code:
1
2
3
ini_set('mbstring.internal_encoding', 'utf-8');
ini_set('mbstring.http_input', 'utf-8');
ini_set('mbstring.http_output', 'utf-8');
(Die veranderen de encoding die PHP gebruikt.)

En direct na het opzetten van je MySQL-verbinding deze queries uitvoeren:
code:
1
SET CHARACTER SET utf8; SET NAMES 'utf8';

[ Voor 8% gewijzigd door djc op 04-07-2006 10:37 ]

Rustacean

Pagina: 1