فونکسیون PHP strnatcasecmp()
مثال
استفاده از الگوریتم "ناتورل" برای مقایسه دو رشته (بدون توجه به بزرگ و کوچک):
<?php echo strnatcasecmp("2Hello world!","10Hello WORLD!"); echo "<br>"; echo strnatcasecmp("10Hello world!","2Hello WORLD!"); ?>
تعریف و استفاده
strnatcasecmp() فونکسیون بایستی "ناتورل" الگوریتمی برای مقایسه دو رشته استفاده میکند.
در الگوریتم طبیعی، عدد 2 کوچکتر از عدد 10 است. در مرتبسازی رایانهای، 10 کوچکتر از 2 است زیرا اولین عدد در 10 کوچکتر از 2 است.
نکته:strnatcasecmp() به حروف بزرگ و کوچک حساس نیست.
نحوه استفاده
strnatcasecmp(string1,string2)
پارامترها | توضیح |
---|---|
string1 | ضروری. زبان اول که باید مقایسه شود را مشخص میکند. |
string2 | ضروری. زبان دوم که باید مقایسه شود را مشخص میکند. |
جزئیات فنی
برگشت: |
این فونکشن برمیگرداند:
|
نسخه PHP: | 4+ |
مثالهای بیشتر
مثال 1
اختلاف بین الگوریتم طبیعی (strnatcmp) و الگوریتم مرتبسازی زبان رایانهای (strcmp):
<?php $arr1 = $arr2 = array("pic1","pic2","pic10","pic01","pic100","pic20","pic30","pic200"); echo "مقایسه استاندارد زبان"."<br>"; usort($arr1,"strcmp"); print_r($arr1); echo "<br>"; echo "مقایسه زبان طبیعی"."<br>"; usort($arr2,"strnatcmp"); print_r($arr2); ?>