我想比较两个字符串“数字”。我的意思是2C
小于11A
。我尝试过这个并没有用:
if("2A" < "11A"){
echo "First corect";
}
if(strcmp("2A", "11A") < 0){
echo "Last corect";
}
echo "Tests completed";
答案 0 :(得分:7)
您正在寻找strnatcmp
(或其不区分大小写的兄弟strnatcasecmp
)。
这会将输入的数字部分作为数字(在“11whatever”之前放置“2whatever”)和文本部分作为文本(在“2b”之前放置“2a”)。
答案 1 :(得分:2)
试试这样:
if((int) '2A' < (int) '11A'){
echo "First correct";
}
答案 2 :(得分:0)
if(intval(0x2A) < intval(0x11A)){
echo "First corect";
}
else
{
echo "Tests incompleted";
}
试试这段代码
答案 3 :(得分:0)
写一个函数:
<Object>
,其中每个对象可以是字符串或整数,其中整数是从非连续字符串之间的连续字符串创建的-digits,字符串是任意2位数之间的连续非数字。Nth elements
相等,则继续比较N+1th elements
,否则return t/f
基于整数或整数或字符串到字符串比较。