zoukankan      html  css  js  c++  java
  • echo 1+2+"3+4+5“输出的结果是6

                如上,为什么echo 1+2+"3+4+5”输出的结果是6呢?刚开始我也不是很明白,以为有问题,但在电脑上运行程序的时候,结果出现6 了。这让我更加疑惑不解。现将问题解释一番。

          在php语言里,对于数字式字符与数字如何参与运算,在具体情况下会视情来确定,例如:echo "3+4+5";  结果: 3+4+5 。因为将其视作是一个字符串了。而当echo 1+2+"3+4+5”时,会将其视为一个表达式。这样就涉及到PHP中不同数据类型运算的问题了。不同数据类型的数据在参与数据时,php会进行数据转换,以尽量确保使表达式成

    功运行,在"3+4+5"前面的运算符是 + ,那么,php会将"3+4+5"当作数值类型,此时会隐式地进行数据类型的转换,将

    这个字符串转换成数值,php字符串转整数的规则是,从字符串前部开始提取尽可能多的数字,后面非数字部分被丢

    弃。"3+4+5"是字符串,进入数值计算的时候,会将字符串硬性的转化为数值,一般是取第一个字符串的值,如果是数

    值型的字符串,则是一个完整的数字。因此,"3+4+5"转换成数值的结果就是3,所以,整个表达式的结果是:1+2+3 = 

    6。

  • 相关阅读:
    calico网络异常,不健康
    k8s部署xxl-job-admin
    K8S
    二进制部署k8s高可用
    kubernetes集群部署redis5.0.6单机版
    K8s之MySQL实现数据持久化
    Kubernetes网络
    Oracle数据表锁死的解决办法
    查询各个表的详情
    Oracle-查看所有表、字段以及表注释和字段注释
  • 原文地址:https://www.cnblogs.com/cmderq/p/9130933.html
Copyright © 2011-2022 走看看