(PHP 4, PHP 5)
sql_regcase — Erstellt einen regulären Ausdruck für eine Suche nach Übereinstimmungen ohne Berücksichtigung von Groß-/Kleinschreibung
Erstellt einen regulären Ausdruck für eine Suche nach Übereinstimmungen ohne Berücksichtigung von Groß- und Kleinschreibung.
Diese Funktion ist seit PHP 5.3.0 DEPRECATED (veraltet). Sich auf diese Funktion zu verlassen ist in keiner Weise empfehlenswert.
Die umzuwandelnde Zeichenkette
Gibt einen korrekten regulären Ausdruck zurück, der auf string ohne Berücksichtigung von Groß- und Kleinschreibung passt. Dieser Ausdruck entspricht string, wobei jeder Buchstabe in einen Klammerausdruck umgewandelt wird. Die Klammer enthält diesen Buchstaben in groß- und kleingeschriebener Form. Andere Zeichen bleiben unverändert.
Beispiel #1 sql_regcase()-Beispiel
<?php
echo sql_regcase("Foo - bar");
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
[Ff][Oo][Oo] - [Bb][Aa][Rr].
Dies kann bei Produkten, die nur reguläre Ausdrücke mit Berücksichtigung von Groß- und Kleinschreibung unterstützen, verwendet werden, um eine Übereinstimmung mit Suchmustern ohne Berücksichtigung von Groß- und Kleinschreibung zu erreichen.
Hinweis:
Seit PHP 5.3.0 ist die regex-Erweiterung zugunsten der PCRE-Erweiterung als veraltete markiert. Ein Aufruf dieser Funktion wird eine E_DEPRECATED-Notice ausgeben. Sie können sich die Liste der Unterschiede ansehen, wenn Sie Hilfe beim Umstieg auf PCRE benötigen.
<?php
function mb_sql_regcase($string,$encoding='auto'){
$max=mb_strlen($item,$encoding);
for ($i = 0; $i < $max; $i++) {
$char=mb_substr($item,$i,1,$encoding);
$up=mb_strtoupper ($char,$encoding);
$low=mb_strtolower($char,$encoding);
$ret.=($up!=$low)?'['.$up.$low.']' : $char;
}
return $ret;
}
?>
if you set right locale:
setlocale(LC_CTYPE,"ru_RU.KOI8-R");
print sql_regcase("Цffnung");
will output:
"[Цц][Ff][Ff][Nn][Uu][Nn][Gg]"