• 「PHP基础知识」隐式数据类型


    功能要求

    隐式数据类型转换演示。

    实例代码

    1. "utf-8">
    2. 隐式类型转换
    3.   //隐式类型转换
    4.   $a = 10;
    5.   $b = "string";
    6.   $c = $a.$b;
    7.   echo '$c = '.$c."
      "
      ; // 输出10string
    8.   
    9.   $str1 = "1"; //$str1字符串类型
    10.   $str2 = "ab"; //$str2字符串类型
    11.   $num1 = $str1 + 5; //$num2的结果是整型(6)
    12.   echo '$num1 = '.$num1."
      "
      ;
    13.   $num2 = $str1 + 2.56; //$num3的结果是浮点型(3.56)
    14.   echo '$num2 = '.$num1."
      "
      ;
    15.   $num3 = $str1 + $str2; // 出现错误
    16.   echo '$num3 = '.$num3."
      "
      ;
    17.   $str2 = "2ab";
    18.   $num3 = $str1 + $str2;
    19.   echo '$num3 = '.$num3."
      "
      ;
    20. ?>

    运行结果

     

    知识说明

    PHP数据类型之间的转换有隐式类型转换(自动类型转换)和显示类型转换(强制类型转换)两种。PHP中隐式数据类型转换很常见。

    $a.$b:在连接操作前,$a是整数类型,$b是字符串类型。连接操作后,$a隐式(自动)地转换为字符串类型。

    PHP隐式类型转换的另一个例子是加号“+”。如果一个数是浮点数,则使用加号后其他的所有数都被当作浮点数,结果也是浮点数;否则,参与“+”运算的运算数都将解释成整数,结果也是一个整数。

    $num2 = $str1 + 2.56:由于$str1 = "1"在执行“$num2 = $str1 + 2.56”语句时,会将字符串“1”转换为浮点数1.0。

    $num3 = $str1 + $str2:由于$str1 = "1",$str2 = "ab",在执行“$num3 = $str1 + $str2”时,会将字符串“1”转换为整数1,但字符串“ab”无法转转换为数字类型,因此会出现“A non-numeric value encountered in ……”的错误提示信息。

    echo '$num3 = '.$num3."
    ";
    :在输出$num3时,只会把$str1转换后的值输出。

    $str2 = "2ab";:从新为$str2赋值为字符串“2ab”,即字符串以数字开头

    $num3 = $str1 + $str2;:由于$str1 = "1",$str2 = "2ab",在执行“$num3 = $str1 + $str2”时,会将字符串“1”转换为整数1,字符串“2ab”转换为数字类型时,只转换以数字开头的数字部分,因此$num3 = 1 + 2 = 3。

  • 相关阅读:
    微机原理与接口技术-第八章常用接口技术
    KubeSphere简介,功能介绍,优势,架构说明及应用场景
    图的应用之最小生成树
    vue-pdf在vue框架中的使用
    oauth2.0授权码模式详解
    Linux驱动模型之注册设备
    Dubbo+zookeeper的引入及使用
    C 语言 goto 语句不建议使用的理由
    ubuntu18.04配置CUDA-11.3、cuDNN、PyTorch
    「Kafka」监控、集成篇
  • 原文地址:https://blog.csdn.net/huijianight/article/details/126130188