PHP Doku:: Vergleich von Zeichenketten ohne Unterscheidung der Groß- und Kleinschreibung (Binary safe) - function.strcasecmp.html

Verlauf / Chronik / History: (1) anzeigen

Sie sind hier:
Doku-StartseitePHP-HandbuchFunktionsreferenzTextverarbeitungZeichenkettenString-Funktionenstrcasecmp

Ein Service von Reinhard Neidl - Webprogrammierung.

String-Funktionen

<<str_word_count

strchr>>

strcasecmp

(PHP 4, PHP 5)

strcasecmpVergleich von Zeichenketten ohne Unterscheidung der Groß- und Kleinschreibung (Binary safe)

Beschreibung

int strcasecmp ( string $str1 , string $str2 )

Groß- und kleinschreibungsunabhängiger Vergleich zweier Zeichenketten, der binary safe ausgeführt wird.

Parameter-Liste

str1

Die erste Zeichenkette.

str2

Die zweite Zeichenkette.

Rückgabewerte

Ist str1 kleiner als str2 wird ein Wert < 0 zurückgegeben, ist str1 größer als str2 ein Wert > 0, und bei Gleichheit gibt die Funktion 0 zurück.

Beispiele

Beispiel #1 strcasecmp()-Beispiel

<?php
$var1 
"Hallo";
$var2 "hallo";
if (
strcasecmp($var1$var2) == 0) {
    echo 
'$var1 ist gleich $var2 bei einem String-Vergleich'
       
'ohne Berücksichtigung von Groß- und Kleinschreibung';
}
?>

Siehe auch

  • preg_match() - Führt eine Suche mit einem regulären Ausdruck durch
  • strcmp() - Vergleich zweier Strings (Binary safe)
  • substr() - Gibt einen Teil eines Strings zurück
  • stristr() - Wie strstr, aber unabhängig von Groß- bzw. Kleinschreibung
  • strncasecmp() - Binärdaten-sicherer und groß- und kleinschreibungs-unabhängiger Stringvergleich der ersten n Zeichen
  • strstr() - Findet das erste Vorkommen eines Strings


2 BenutzerBeiträge:
- Beiträge aktualisieren...
alvaro at demogracia dot com
29.07.2010 14:35
Don't forget this is a single-byte function: in Unicode strings it'll provide incoherent results as soon as both strings differ only in case. There doesn't seem to exist a built-in multi-byte alternative so you need to write your own, taking into account both character encoding and collation.

27.08.2002 15:53
The sample above is only true on some platforms that only use a simple 'C' locale, where individual bytes are considered as complete characters that are converted to lowercase before being differentiated.

Other locales (see LC_COLLATE and LC_ALL) use the difference of collation order of characters, where characters may be groups of bytes taken from the input strings, or simply return -1, 0, or 1 as the collation order is not simply defined by comparing individual characters but by more complex rules.

Don't base your code on a specific non null value returned by strcmp() or strcasecmp(): it is not portable. Just consider the sign of the result and be sure to use the correct locale!



PHP Powered Diese Seite bei php.net
The PHP manual text and comments are covered by the Creative Commons Attribution 3.0 License © the PHP Documentation Group - Impressum - mail("TO:Reinhard Neidl",...)