<?php
$link = mysqli_connect("127.0.0.1", "my_user", "my_password", "sakila");
/* Verbindung ĂŒberprĂŒfen */
if (mysqli_connect_errno()) {
printf("Verbindung fehlgeschlagen: %s\n", mysqli_connect_error());
exit();
}
foreach (array('latin1', 'utf8') as $charset) {
// Zeichensatz Àndern, um dessen Auswirkung auf einige Werte
// (z. B. die LĂ€nge in Bytes) zu zeigen
mysqli_set_charset($link, $charset);
$query = "SELECT actor_id, last_name from actor ORDER BY actor_id";
echo "======================\n";
echo "Zeichensatz: $charset\n";
echo "======================\n";
if ($result = mysqli_query($link, $query)) {
/* Informationen ĂŒber alle Spalten abrufen */
$finfo = mysqli_fetch_fields($result);
foreach ($finfo as $val) {
printf("Name: %s\n", $val->name);
printf("Tabelle: %s\n", $val->table);
printf("max. LĂ€nge: %d\n", $val->max_length);
printf("LĂ€nge: %d\n", $val->length);
printf("Zeichensatz-Nr.: %d\n", $val->charsetnr);
printf("Flags: %d\n", $val->flags);
printf("Typ: %d\n\n", $val->type);
}
mysqli_free_result($result);
}
}
mysqli_close($link);
?>
Die obigen Bespiele erzeugen folgende Ausgabe:
======================
Zeichensatz: latin1
======================
Name: actor_id
Tabelle: actor
max. LĂ€nge: 3
LĂ€nge: 5
Zeichensatz-Nr.: 63
Flags: 49699
Typ: 2
Name: last_name
Tabelle: actor
max. LĂ€nge: 12
LĂ€nge: 45
Zeichensatz-Nr.: 8
Flags: 20489
Typ: 253
======================
Zeichensatz: utf8
======================
Name: actor_id
Tabelle: actor
max. LĂ€nge: 3
LĂ€nge: 5
Zeichensatz-Nr.: 63
Flags: 49699
Typ: 2
Name: last_name
Tabelle: actor
max. LĂ€nge: 12
LĂ€nge: 135
Zeichensatz-Nr.: 33
Flags: 20489