当前位置: 首页> 函数类别大全> strnatcasecmp

strnatcasecmp

使用“自然顺序”算法比较字符串(不区分大小写)
名称:strnatcasecmp
分类:字符串
所属语言: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">strnatcasecmp</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">strnatcasecmp</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">"Standard string comparison"</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">"Natural order string comparison"</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>

亲自试一试

同类函数
  • 计算字符串的md5哈希值 md5

    md5

    计算字符串的md5哈希值
  • 转换字符串第一个字节为 0-255 之间的值 ord

    ord

    转换字符串第一个字节为0-255之间的值
  • 检查字符串是否以给定的子字符串开头 str_starts_with

    str_starts_with

    检查字符串是否以给定的子字符串开头
  • 使用 uuencode 编码一个字符串 convert_uuencode

    convert_uuencode

    使用uuencode编码一个字符串
  • 以 C 语言风格使用反斜线转义字符串中的字符 addcslashes

    addcslashes

    以C语言风格使用反斜线转义字符串中的字符
  • 计算文件的sha1哈希值 sha1_file

    sha1_file

    计算文件的sha1哈希值
  • 解码一个 uuencode 编码的字符串 convert_uudecode

    convert_uudecode

    解码一个uuencode编码的字符串
  • 返回格式化的字符串 vsprintf

    vsprintf

    返回格式化的字符串