توابع substr_compare() در PHP

مثال

مقایسه دو رشته:

<?php
echo substr_compare("Hello world","Hello world",0);
?>

اجرای نمونه

تعریف و استفاده

substr_compare() تابع از موقعیت مشخصی دو رشته را مقایسه می‌کند.

توضیحات:این تابع دوگانه‌امن و انتخابی‌است که به صورت حساس به حروف بزرگ و کوچک است.

نحوه استفاده

substr_compare(string1,string2,startpos,length,case)
پارامترها توضیحات
string1 لازم است. مشخص می‌کند که رشته اول باید مقایسه شود.
string2 لازم است. مشخص می‌کند که رشته دوم باید مقایسه شود.
startpos لازم است. مشخص می‌کند که رشته اولی باید مقایسه شود. string1 لازم است. مشخص می‌کند که مقایسه در کجا باید شروع شود. اگر عدد منفی باشد، از انتهای رشته شروع می‌شود.
length اختیاری. مشخص می‌کند که مقایسه از کجا شروع شود. string1 از چندین کاراکتر در رشته‌ها مقایسه شود (تعداد کاراکترها).
case

اختیاری. مقدار بولین، که مشخص می‌کند آیا باید مقایسه‌ای با توجه به حروف بزرگ و کوچک انجام شود یا خیر:

  • FALSE - پیش‌فرض. توجه به حروف بزرگ و کوچک
  • TRUE - بدون توجه به حروف بزرگ و کوچک

جزئیات فنی

مقدار بازگشتی:

این تابع برمی‌گرداند:

  • 0 - اگر دو رشته برابر هستند
  • <0 - اگر string1 از موقعیت شروع startposکوچکتر است string2
  • >0 - اگر string1 از موقعیت شروع startposبزرگتر است string2

اگر length بزرگتر یا برابر با string1 طول، این تابع FALSE برمیگرداند.

نسخه PHP: 5+
گزارش تغییرات: از PHP 5.1 به بعد، استفاده از اعداد منفی startpos

مثالهای بیشتر

مثال 1

مقایسه دو رشته، وقتی string1 وقتی شروع مقایسه در موقعیت 6 است:

<?php
echo substr_compare("Hello world","world",6);
?>

اجرای نمونه

مثال 2

استفاده از تمامی پارامترها:

<?php
echo substr_compare("world","or",1,2);
echo substr_compare("world","ld",-2,2);
echo substr_compare("world","orl",1,2);
echo substr_compare("world","OR",1,2,TRUE);
echo substr_compare("world","or",1,3);
echo substr_compare("world","rl",1,2);
?>

اجرای نمونه

مثال 3

برگشت به ارزشهای مختلف:

<?php
echo substr_compare("Hello world!","Hello world!",0); // دو رشته برابر هستند
echo substr_compare("Hello world!","Hello",0); // string1 بیشتر از string2
echo substr_compare("Hello world!","Hello world! Hello!",0); // string1 کمتر از string2
?>

اجرای نمونه