当数字与字符串遇上‘+’和‘.’该如何处理

两项不同:一项有单引号,一项没有

有单引号数字与无单引号数字相加:(20 + '123')=143
有单引号数字与无单引号数字相连:(20 . '123')=20123

单引号中数字在前,字母在后型:

有单引号数字字母组合与无单引号数字相加:(20 + '22abc')=42(会加上引号内的数字)
有单引号数字字母组合与无单引号数字相加:(20 . '22abc')=2022abc(字符串拼接处理)

单引号中字母在前,数字在后型:

有单引号数字字母组合与无单引号数字相加:(20 + 'abc22')=20(引号内容会被忽略)
有单引号数字字母组合与无单引号数字相加:(20 . 'abc22')=20abc22(字符串拼接处理)

两项相同:都有单引号

有单引号数字与无单引号数字相加:('20' + '123')=143
有单引号数字与无单引号数字相连:('20' . '123')=20123

单引号中数字在前,字母在后型:

有单引号数字字母组合与无单引号数字相加:('20' + '22abc')=42(会加上引号内的数字)

有单引号数字字母组合与无单引号数字相加:('22abc' + '20')=42(会加上引号内的数字

有单引号数字字母组合与无单引号数字相加:('20' . '22abc')=2022abc(字符串拼接处理)

单引号中字母在前,数字在后型:

有单引号数字字母组合与无单引号数字相加:('20' + 'abc22')=20(引号内容会被忽略)

有单引号数字字母组合与无单引号数字相加:('20' . 'abc22')=20abc22(字符串拼接处理)

有单引号数字字母组合与无单引号数字相加:('abc22' + '20')=20(含字母和引号的变量内容会被忽略)


总结:两个变量做‘+’或‘.’操作:
‘+’操作:如果两个变量都为数字,直接做加运算!
  如果$a为数字,$b是数字加字母的情况:
   当$b中的数字在前,则$a加上$b中的数字部分,字母忽略,结果输出$a,$b中数字的和;
   当$b中的数字在后,则$b会被全部忽略;结果只输出$a的值;

‘.’操作:无论哪种情况,都作为字符串连接处理,输出值为$a,$b的拼接结果


ps:当操作数参与运算时,会转化为统一的类型进行运算。
        字符串与数字运算时,字符会自动(尽量)转化为数字。 
   如:  20+'2.55ab' -->22.55

20+'0x20ab'; -->52 //0x代表后面数字是十六进制

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值