Antwort an „Onkel Hans“ verfassen

Hallo!

Meine PHP-Skripte greifen via PDO auf meine SQL Datenbanken zu. Bei meinen Datenbank-Tabellen stelle ich bei Kollation immer „utf8mb4_unicode_ci“ ein. Auch jede Datenbank selbst ist auf „utf8mb4_unicode_ci“ eingestellt.

Nun ist mir gerade aufgefallen, dass ich bei der PDO-Verbindung als Charset immer nur „utf8mb4“ angebe und nicht „utf8mb4_unicode_ci“:

$dsn = "mysql:host=$host; dbname=$db; charset=utf8mb4"

Ich hatte noch nie irgendein Problem mit Charsets, falschen Zeichen oder irgendwas in diese Richtung. Aber nachdem ich kein Experte bin, möchte gerne wissen und sicherstellen, ob das eh OK ist so … oder soll ich dann bei der PDO Verbindung als Charsetangabe auch unbedingt „utf8mb4_unicode_ci“ mit auf den Weg geben?

Oder anders gefragt: Wenn die Angabe von „utf8mb4“ reicht, wieso muss man dann nicht explizit die unicode_ci Variante angaben?

Wie gesagt, ich habe kein Problem, ich möchte mich nur fortbilden und besser verstehen, was ich tue.

Danke im Voraus!

Onkel Hans

freiwillig, öffentlich sichtbar
freiwillig, öffentlich sichtbar
freiwillig, öffentlich sichtbar

Ihre Identität in einem Cookie zu speichern erlaubt es Ihnen, Ihre Beiträge zu editieren. Außerdem müssen Sie dann bei neuen Beiträgen nicht mehr die Felder Name, E-Mail und Homepage ausfüllen.

abbrechen