> 백엔드 개발 > PHP 튜토리얼 > 求解PHP字符串比较的问题?

求解PHP字符串比较的问题?

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
풀어 주다: 2016-06-23 14:05:07
원래의
848명이 탐색했습니다.

字符串大小比较的规则是什么?
例如:"10","10a","a","abc" 他们之间 如何按 升序 降序排列?? 求规则!!


回复讨论(解决方案)

据我所知,他们之间的排列比较的规则是:首先首字母的ascll大小比较如果相同就比较第二个。

字符串大小是按照从首个字符的ASCII来依次排序的

据我所知,他们之间的排列比较的规则是:首先首字母的ascll大小比较如果相同就比较第二个。
"10","10a"这两个如何比较?

var_dump(strnatcmp("10","10a"));

int(-1)

表示 "10" 

引用 1 楼 nowphp 的回复:据我所知,他们之间的排列比较的规则是:首先首字母的ascll大小比较如果相同就比较第二个。
"10","10a"这两个如何比较? 依次类推,如果第二个也相等那就第三个...第n个。

看来都是高手啊 学习了

引用 3 楼 u010044579 的回复:
引用 1 楼 nowphp 的回复:据我所知,他们之间的排列比较的规则是:首先首字母的ascll大小比较如果相同就比较第二个。
"10","10a"这两个如何比较?依次类推,如果第二个也相等那就第三个...第n个。
还是有点不明白,望详解:“10“ 的第三位没有 “10a”的第三位是a  这个如何比较?

没有 和 有 你说哪个大?

有什么不明白的
你明白ascII码么?
10不说应该明白么?
知道ascii码a在十进制中代表什么吗?代表97

ascii码0在十进制中代表48
1代表49
那么1
10是否可以看做 48 49
10a是否可以看做 48 49 97
那么前面2个相同了,后面第三个一个是97,一个是无,你说哪个大哪个小呢?

ascii码0在十进制中代表48
1代表49
那么1
10是否可以看做 48 49
10a是否可以看做 48 49 97
那么前面2个相同了,后面第三个一个是97,一个是无,你说哪个大哪个小呢?
OK,明白了,谢了

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿