strncmp
تابع strncmp برای مقایسه رشته (String Compare) است. این مقایسه حساس به حروف است؛ یعنی H با h فرق دارد. همچنین می توانی فقط n کاراکتر اول را بسنجی؛ مثل مقایسه چند حرف اول اسم ها در مدرسه.
تعریف کوتاه و رفتار خروجی
این تابع دو رشته را تا طول مشخص مقایسه می کند. نتیجه عددی است: صفر یعنی برابر؛ منفی یعنی رشته اول کوچکتر؛ مثبت یعنی رشته اول بزرگتر. چون حساس به حروف است، بزرگی/کوچکی حروف مهم است.
سینتکس
strncmp(string1, string2, length)
مثال 1: مقایسه شش کاراکتر اول (حساس به حروف)
<?php
echo strncmp("Hello world!", "Hello earth!", 6);
?>
مثال 2: تاثیر حروف بزرگ/کوچک
<?php
echo strncmp("Hello", "Hello", 6);
echo "<br>";
echo strncmp("Hello", "hELLo", 6);
?>
نکته ها و مقایسه با توابع نزدیک
نکته: اگر حساسیت به حروف نمی خواهی، از strncasecmp استفاده کن.
نکته: اگر طول مهم نیست، راهنمای مقایسه رشته حساس به حروف را ببین.
راهنمای سریع گام به گام
- دو رشته را آماده کن.
- تعداد کاراکترهای مقایسه را تعیین کن.
strncmp(a, b, n)را صدا بزن.- صفر یعنی برابر؛ منفی یعنی a کوچکتر.
- مثبت یعنی a بزرگتر از b است.
جمع بندی سریع
- حساس به حروف است.
- فقط n کاراکتر اول را می سنجد.
- خروجی منفی، صفر، یا مثبت می شود.
- برای چک پیشوندها عالی است.