本人写了如下的代码<?php
    $a = '';        // $a = "" 
    var_dump($a);   // string(0) ""
    echo "<br>";
    $b = 1;
    var_dump($b);   // int(1)
    echo "<br>";
    $a += $b;
    var_dump($a);   // int(1),问题就在这,怎么让变量a为string型?
    exit;
请问:
PHP的变量默认转型的规则是什么?
在开发中最常使用的强制转换函数是什么?
phpstring

解决方案 »

  1.   

    $a += $b

    $a = $a + $b
    既然你是在做算数运算,结果当然是数值而不是串$a .= $b
    就是字符串了
      

  2.   

    $a = intval($a);$a = int($a),这两个都是强制转换为整型
      

  3.   


    var_dump((string)$a);//方法1
    var_dump(strval($a));//方法2
    settype($a,"string");//方法3
    var_dump($a);
      

  4.   

    比如:
    $a = '1';
    $b = '2';   //$b = 2; 为int也是一样的结果$a += $b;   //输入3
    $a .= $b;   //输入12这在里就要看LZ是要进行什么样的操作了。
      

  5.   

    感谢大家展望,使用php变量一定要注意类型,不要中招,否则bug重重
    刚刚查到,此内容为php手册中的11章 类型戏法中的内容,希望看到帖子的人少走些弯路