Liebe Mitdenker,
liebe Wissende,
liebe Neugierige,
ja!
Es kommen in den Werten einer set()-Liste auch Großbuchstaben und eventuell sogar Sonderzeichen und Umlaute vor. [...] Jetzt muss ich erst einmal über Codierung nachdenken, befürchte ich. Da war doch 'was mit preg_match? Außerdem soll die Klasse für utf-8 und für iso8859-1 benutzbar sein.
Es gibt den Modifizierer u (klein, das große steht für ungreedy). Wenn der vorhanden ist, dann wird Muster _und_ Text gemäß UTF-8 interpretiert. Den musst du dann eben in Abhängigkeit setzen oder nicht. Das Problem dabei ist, dass du dann auch die Nicht-ASCII-Zeichen mal so und mal so kodiert in das Suchmuster schreiben musst.
Das obige Array wird bei MySQL als Select-Ergebnis auf "Show columns from
tablename
" pro Spalte der Tabelle geliefert. Ich will es für meine Standard Input-Output-Klasse auswerten.Wenn das was generelles werden soll, musst du dir wohl doch noch ein paar mehr Gedanken zu den erlaubten/vorkommenden Zeichen und deren maskierter Darstellung machen.
Bin ich dabei.
Alternativ habe ich auch
select COLUMN_NAME, COLUMN_DEFAULT, IS_NULLABLE,
DATA_TYPE, CHARACTER_MAXIMUM_LENGTH,
NUMERIC_PRECISION, NUMERIC_SCALE, CHARACTER_SET_NAME,
COLLATION_NAME, COLUMN_TYPE, COLUMN_COMMENT
from information_schema.columns where table_name='test';
im Visier. Leider muss ich trotzdem COLUMN_TYPE auseinandernehmen, um an die Werte für Set und Enum heranzukommen. Da habe ich also nicht viel gewonnen, mit Ausnahme von COLUMN_COMMENT.
Spirituelle Grüße
Euer Robert
Möge der Forumsgeist wiederbelebt werden!