當前位置: 首頁> 函數類別大全> strnatcmp

strnatcmp

使用“自然順序”算法進行字符串比較
名稱:strnatcmp
分類:字符串
所屬語言:php
一句話介紹:使用一種"自然排序"算法來比較兩個字符串(對大小寫敏感)。

實例

例子1

使用"自然"算法來比較兩個字符串(區分大小寫):

 <span class="token php language-php"><span class="token delimiter important"><?php</span>
<span class="token keyword">echo</span> <span class="token function">strnatcmp</span> <span class="token punctuation">(</span> <span class="token string double-quoted-string">"2Hello world!"</span> <span class="token punctuation">,</span> <span class="token string double-quoted-string">"10Hello world!"</span> <span class="token punctuation">)</span> <span class="token punctuation">;</span>
<span class="token keyword">echo</span> <span class="token string double-quoted-string">"<br>"</span> <span class="token punctuation">;</span>
<span class="token keyword">echo</span> <span class="token function">strnatcmp</span> <span class="token punctuation">(</span> <span class="token string double-quoted-string">"10Hello world!"</span> <span class="token punctuation">,</span> <span class="token string double-quoted-string">"2Hello world!"</span> <span class="token punctuation">)</span> <span class="token punctuation">;</span>
<span class="token delimiter important">?></span></span>

親自試一試

例子2

自然算法(strnatcmp)和常規計算機字符串排序算法(strcmp)的差異:

 <span class="token php language-php"><span class="token delimiter important"><?php</span>
<span class="token variable">$arr1</span> <span class="token operator">=</span> <span class="token variable">$arr2</span> <span class="token operator">=</span> <span class="token keyword">array</span> <span class="token punctuation">(</span> <span class="token string double-quoted-string">"pic1"</span> <span class="token punctuation">,</span> <span class="token string double-quoted-string">"pic2"</span> <span class="token punctuation">,</span> <span class="token string double-quoted-string">"pic10"</span> <span class="token punctuation">,</span> <span class="token string double-quoted-string">"pic01"</span> <span class="token punctuation">,</span> " <span class="token string double-quoted-string">pic100"</span> <span class="token punctuation">,</span> <span class="token string double-quoted-string">"pic20"</span> <span class="token punctuation">,</span> <span class="token string double-quoted-string">"pic30"</span> <span class="token punctuation">,</span> <span class="token string double-quoted-string">"pic200"</span> <span class="token punctuation">)</span> <span class="token punctuation">;</span>
<span class="token keyword">echo</span> <span class="token string double-quoted-string">"標準字符串比較"</span> <span class="token operator">.</span> <span class="token string double-quoted-string">"<br>"</span> <span class="token punctuation">;</span>
<span class="token function">usort</span> <span class="token punctuation">(</span> <span class="token variable">$arr1</span> <span class="token punctuation">,</span> <span class="token string double-quoted-string">"strcmp"</span> <span class="token punctuation">)</span> <span class="token punctuation">;</span>

<span class="token function">print_r</span> <span class="token punctuation">(</span> <span class="token variable">$arr1</span> <span class="token punctuation">)</span> <span class="token punctuation">;</span>
<span class="token keyword">echo</span> <span class="token string double-quoted-string">"<br>"</span> <span class="token punctuation">;</span>

<span class="token keyword">echo</span> <span class="token string double-quoted-string">"自然順序字符串比較"</span> <span class="token operator">.</span> <span class="token string double-quoted-string">"<br>"</span> <span class="token punctuation">;</span>
<span class="token function">usort</span> <span class="token punctuation">(</span> <span class="token variable">$arr2</span> <span class="token punctuation">,</span> <span class="token string double-quoted-string">"strnatcmp"</span> <span class="token punctuation">)</span> <span class="token punctuation">;</span>

<span class="token function">print_r</span> <span class="token punctuation">(</span> <span class="token variable">$arr2</span> <span class="token punctuation">)</span> <span class="token punctuation">;</span>
<span class="token delimiter important">?></span></span>

親自試一試

同類函數
  • 將帶引號的可打印字符串轉換為8位字符串 quoted_printable_decode

    quoted_printable_decode

    將帶引號的可打印字符串轉換為8位字符串
  • 從字符串的開頭和結尾去除空格(或其他字符) trim

    trim

    從字符串的開頭和結尾去除空格(或其他字符
  • 將格式化的字符串寫入流 vfprintf

    vfprintf

    將格式化的字符串寫入流
  • 將字符串轉化為小寫 strtolower

    strtolower

    將字符串轉化為小寫
  • 使用“自然順序”算法進行字符串比較 strnatcmp

    strnatcmp

    使用“自然順序”算法進行字符串比較
  • 獲取不匹配遮罩的起始子字符串的長度 strcspn

    strcspn

    獲取不匹配遮罩的起始子字符串的長度
  • implode的別名 join

    join

    implode的別名
  • 將特殊字符轉換為HTML實體 htmlspecialchars

    htmlspecialchars

    將特殊字符轉換為HTML實體