美文网首页PHP学习PHP实战
PHP中的数据转换、类型约束

PHP中的数据转换、类型约束

作者: kangyiii | 来源:发表于2017-03-19 22:29 被阅读32次

数据转换

转换基本语法:(目标类型)数据;

<?php
                $arr = array('a1'=>1,'bb'=>2.2,3,4.5);
        $o1 = (object)$arr;
        var_dump($o1);
?>
  1. 对象转换为对象:没有变化
  2. 数组转换为对象:数组的键名当作属性名,值为对应值
    如果是数字下标,对应属性不方便获取,所以通常适合于纯字符下标的数组。
  3. null转换为对象:空对象
输出结果:object(stdClass)#2 (0) { } 
  1. 其他标量数据转换为对象:属性名为固定的"scalar",值为该变量的值
        $s1 = 1;
        $s2 = 2.2;
        $s3 = 'abc';
        $s4 = true;
        $obj1 = (object)$s1;
        $obj2 = (object)$s2;
        $obj3 = (object)$s3;
        $obj4 = (object)$s4;
        echo "<pre>";
            var_dump($obj1,$obj2,$obj3,$obj4);
        echo "</pre>";
打印结果

类型约束

其他语言中,类型约束是语法上的要求,定义一个变量的时候,必须指定类型,类型一旦确定,这个变量只能存储这个类型的数据,这是强类型语言的特点。但PHP是弱类型语言,无需为变量指定类型。

在PHP较新的语法中,在某些特定的场合,针对某些特定类型,也可以进行语法约束:

  • 场合:函数(或方法)的形参变量
  • 类型:对象类型(类名)、接口类型(接口名),数组类型(array),函数类型(callable)

示例1:方法参数中类型约束为为A(类名)

        function f1( A $p1){
            echo "<br/>";
            var_dump($p1);
        }

示例2:方法参数中类型约束为数组

        function f2(array $a){
            $c = count($a);
            return $c;
        }
        $r1 = f2(array(1,2,3,4,5,56));
        echo "<br/>长度为".$r1;

相关文章

  • PHP中的数据转换、类型约束

    数据转换 转换基本语法:(目标类型)数据; 对象转换为对象:没有变化 数组转换为对象:数组的键名当作属性名,值为对...

  • PHP数据类型转换

    PHP的数据类型转换属于强制转换,允许转换的PHP数据类型有: (int)、(integer):转换成整形(flo...

  • php的数据类型的转换和运算符

    主要分为两种,自动转换和强制类型转换,也就是显式转换和隐式转换,自动转换用的多 php中强制类型转换 在php中的...

  • php变量和数据类型

    php中的变量 PHP中的变量声明 PHP中的变量的使用 PHP中的数据类型之整型 PHP数据类型之浮点类型和布尔...

  • 数据类型转换,循环体

    PHP其余数据类型转换为逻辑型 强制转换:settype(变量名,类型);隐式转换,根据语句转换*数字——bool...

  • PHP中数据类型的转换

    其他类型转换为字符串类型 临时转换 临时转换的实现方法有两种1.通过(string)来实现;2.通过strval(...

  • JS里的数据类型转换

    在js中,数据类型转换分为显式数据类型转换和隐式数据类型转换。 1, 显式数据类型转换 a:转数字: 1)Numb...

  • 关于PHP的数据类型(一)

    php 中的数据类型: php 中支持 8 种数据类型标量类型:boolean(布尔型), integer (整型...

  • 03-数据类型转换

    数据类型转换 正如其它编程语言那样,php不同数据类型之间也是可以互相转化的,今天我们来简单列举它们的转换。 首先...

  • php 将json格式数据转换成数组的方法

    在PHP中可以使用json_decode()函数将JSON编码的字符串转换为适当的PHP数据类型。默认情况下,js...

网友评论

    本文标题:PHP中的数据转换、类型约束

    本文链接:https://www.haomeiwen.com/subject/zfnlnttx.html