亚洲最大看欧美片,亚洲图揄拍自拍另类图片,欧美精品v国产精品v呦,日本在线精品视频免费

  • 站長資訊網(wǎng)
    最全最豐富的資訊網(wǎng)站

    php如何使用“自然”算法知道字符串的異同

    上一篇文章中我們了解了查找字符串在另一字符串中最后一次出現(xiàn)位置的方法,有需要的請看《php如何知道字符串最后一回出現(xiàn)的位置》。這次我們向大家介紹使用“自然”算法知道字符串的異同,有需要的可以參考參考。

    在之前的文章中,我們介紹了比較字符串的方法,但是我們這次不一樣啦,我們使用“自然”算法來比較字符串。如果有想知道使用普通算法比較字符串的,可以看完之前的文章《php函數(shù)之如何知道字符串的異同》哦。

    我們來看看什么叫做“自然”排序算法。

    實(shí)現(xiàn)了一個和人們通常對字母數(shù)字字符串進(jìn)行排序的方法一樣的排序算法并保持原有鍵/值的關(guān)聯(lián),這被稱為“自然排序”。

    好了,我們現(xiàn)在就來進(jìn)入正題吧。

    首先我們來看一個小例子。

    <?php echo strnatcasecmp("2Hello WORLD!","10Hello WORLD!"); echo "<br>"; echo strnatcasecmp("2hello world!","2aello world!"); echo "<br>"; echo strnatcasecmp("2hello world!","9hello WORLD!"); echo "<br>"; echo strnatcasecmp("2hello world!","2HELLO WORLD!"); ?>

    這個結(jié)果是

    php如何使用“自然”算法知道字符串的異同

    我們仔細(xì)看看這個例子啊,當(dāng)我們除了前面數(shù)字其他都一模一樣的時(shí)候,我們發(fā)現(xiàn)數(shù)字是-1,當(dāng)我們數(shù)字一樣,但是后面字母有所變化的時(shí)候,是1,而當(dāng)數(shù)字一樣,字母一樣,大小寫不一樣的時(shí)候,發(fā)現(xiàn)為0.這都是什么原因呢?

    帶著這些疑問,我們?nèi)タ纯催@個函數(shù)吧。

    strnatcasecmp() 函數(shù)使用一種"自然"算法來比較兩個字符串(不區(qū)分大小寫)。

    既然這樣,那我們?nèi)タ纯催@個函數(shù)的語法吧。

    strnatcasecmp(要比較的第一個字符串,要比較的第二個字符串)

    之前我們還在好奇的“0”,“-1”,“1”,你知道是什么意思嗎?不賣關(guān)子了,其實(shí)這些是函數(shù)的返回值,用來說明第一個字符串與第二個字符串之間的關(guān)系的。

    該函數(shù)返回:

    • 0 – 如果兩個字符串相等

    • <0 – 如果 string1 小于 string2

    • >0 – 如果 string1 大于 string2

    其實(shí)用“自然”算法比較字符串的方法有兩種,這次我們就介紹這種對大小寫不敏感的,下一篇文章介紹一下對大小寫敏感的。

    就說到這里了,有其他想知道的,可以點(diǎn)擊這個哦?!?→php視頻教程

    贊(0)
    分享到: 更多 (0)
    網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號