strcasecmp
تابع strcasecmp دو رشته را با هم مقایسه می کند. «حساسیت به حروف (Case)» یعنی فرق بین حروف بزرگ و کوچک. این تابع به حروف بزرگ وکوچک حساس نیست؛ یعنی Hello و hELLo برابرند. مثل مقایسه نام ها در لیست کلاس، بدون اهمیت به بزرگ نویسی.
تعریف و کاربرد
strcasecmp() دو رشته را مقایسه می کند. این مقایسه بدون حساسیت به حروف و ایمن دودویی است؛ یعنی با هر کاراکتری درست کار می کند.
سینتکس
strcasecmp(string1, string2)
پارامترها
- string1: رشته اول برای مقایسه.
- string2: رشته دوم برای مقایسه.
مقدار بازگشتی
0یعنی دو رشته برابر هستند.< 0یعنیstring1ازstring2کوچک تر است.> 0یعنیstring1ازstring2بزرگ تر است.
مثال پایه
<?php
echo strcasecmp("Hello world!", "HELLO WORLD!");
?>
نمونه بدون حساسیت به حروف
<?php
echo strcasecmp("Hello", "HELLO");
echo "<br>";
echo strcasecmp("Hello", "hELLo");
?>
نمونه تفاوت مقادیر بازگشتی
<?php
echo strcasecmp("Hello world!", "HELLO WORLD!");
// دو رشته برابرند → 0
echo strcasecmp("Hello world!", "HELLO");
// رشته اول بزرگ تر است → > 0
echo strcasecmp("Hello world!", "HELLO WORLD! HELLO!");
// رشته اول کوچک تر است → < 0
?>
گام های عملی مقایسه رشته ها
- دو رشته را مشخص کن.
strcasecmp(string1, string2)را صدا بزن.- خروجی را بررسی کن: 0، منفی، یا مثبت.
نکته: اگر می خواهی فقط تعداد کاراکترها را بسنجی، این تابع مناسب نیست. به strcasecmp همین صفحه و نسخه طول محدود strncasecmp نگاه کن.
جمع بندی سریع
- بدون حساسیت به حروف مقایسه می کند.
- برابری: خروجی صفر است.
- کوچک تر یا بزرگ تر: خروجی منفی یا مثبت.
- برای تعداد حروف مناسب نیست.