当前位置: 首页> 函数类别大全> 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>

亲自试一试

同类函数
  • 使用“自然顺序”算法进行字符串比较 strnatcmp

    strnatcmp

    使用“自然顺序”算法进行字符串比较
  • 解码一个 uuencode 编码的字符串 convert_uudecode

    convert_uudecode

    解码一个uuencode编码的字符串
  • 反引用一个使用 addcslashes() 转义的字符串 stripcslashes

    stripcslashes

    反引用一个使用addcslashes()
  • 将特殊字符转换为HTML实体 htmlspecialchars

    htmlspecialchars

    将特殊字符转换为HTML实体
  • 输出格式化的字符串 printf

    printf

    输出格式化的字符串
  • 输出格式化的字符串 vprintf

    vprintf

    输出格式化的字符串
  • 计算指定字符串在目标字符串中最后一次出现的位置(不区分大小写) strripos

    strripos

    计算指定字符串在目标字符串中最后一次出现
  • 将一个一维数组的值转化为字符串 implode

    implode

    将一个一维数组的值转化为字符串