strncasecmp

(PHP 4 >= 4.0.2, PHP 5, PHP 7, PHP 8)

strncasecmp Binärdaten-sicherer und groß- und kleinschreibungs-unabhängiger Stringvergleich der ersten n Zeichen

Beschreibung

strncasecmp ( string $str1 , string $str2 , int $len ) : int

Diese Funktion ist identisch zu strcasecmp() bis auf den Unterschied, dass Sie die (Mindest-) Anzahl von Zeichen, die von jeder Zeichenkette in den Vergleich einfließen sollen, angeben können.

Parameter-Liste

str1

Die erste Zeichenkette.

str2

Die zweite Zeichenkette.

len

Die Länge der Zeichenkette, die für den Vergleich herangezogen werden soll.

Rückgabewerte

Gibt einen Wert <0 zurück, wenn str1 kürzer ist als str2, einen Wert >0, wenn str1 länger ist als str2, und 0, wenn sie gleich sind.

Siehe auch

  • strncmp() - String-Vergleich der ersten n Zeichen (Binary safe)
  • preg_match() - Führt eine Suche mit einem regulären Ausdruck durch
  • substr_compare() - Binärdaten-sicherer Vergleich zweier Strings, beginnend an einer bestimmten Position und endend nach einer festgelegten Länge
  • strcasecmp() - Vergleich von Zeichenketten ohne Unterscheidung der Groß- und Kleinschreibung (Binary safe)
  • stristr() - Wie strstr, aber unabhängig von Groß- bzw. Kleinschreibung
  • substr() - Gibt einen Teil eines Strings zurück

add a note add a note

User Contributed Notes 2 notes

up
-2
sazalach at gmail dot com
8 years ago
<?php
$str1
= "red";
$str2 = "redent";
$test=strncasecmp($str1, $str2 , 3);
if (
$str1==$str2)
{
echo
"$test";
}
else
{
echo
"$test" ;
}
?>

if we run the above script then we will get return 0, because first string $str1 = "red" and second $str2 = "redent" but in comparison i have set the first three character will try to match. as per condition if two string are equal then it will return 0. But in below example it will return greater than 0 because here is str1 is greater than str2.

<?php
$str1
= "redmyshirt";
$str2 = "redent";
$test=strncasecmp($str1, $str2 , 4);
if (
$str1==$str2)
{
echo
"$test";
}
else
{
echo
"$test" ;
}
?>

as same if we run the below script it will return -1 because str1 is less than str2.

<?php
$str1
= "red";
$str2 = "redent";
$test=strncasecmp($str1, $str2 , 4);
if (
$str1==$str2)
{
echo
"$test";
}
else
{
echo
"$test" ;
}
?>

ya..i think its easy to understand
up
-42
saikumar dot msc at gmail dot com
9 years ago
Example:
<?php
$string
= “true”;
if(
strncasecmp($string, “Trudeau”, 4)) { print “True”; } else { print "False" }
?>

If we look at above example, immediately we will say the final output will be 'False', but that's not real.

Method "strncasecmp()" returns 1 because the first four characters of ‘Trud’ come before the first four characters of "true" when sorted not case sensitively.
To Top