PHP面向对象程序设计内置标准类,普通数据类型转为对象类型示例 本文实例讲述了PHP面向对象程序设计内置标准类,普通数据类型转为对象类型。分享给大家供大家参考,具体如下: 内置标准类 PHP中,有很多“现成的类”,其中有一个被称为“内置标准类”。这个类“内部”可以认为什么也没有。 class stdclass{ } 运行结果: object(stdClass)[1] object(A)[2] 可以看到和普通类没什么区别。 内置标准类的作用是,用于存储一些临时的简单数据,如: $obj1->pp1 = 1; $obj2->port = '3306'; 也可以在类型转换时用于存储数据。 对象的类型转换 其他数据类型转换为对象类型,得到的结果是:内置标准类(stdclass)的一个对象。 语法形式为: $obj = (object)其他类型数据; 数组转换为对象:数组的键名当作属性名,值为对象对应的值。 注意:数字下标的数据元素,转换为对象后的属性,无法通过对象语法获取,因此不推荐转换。 "localhost", 'port' => 3306, 'user' => "root", 'pass' => "123", 'charset' => "utf8", 'dbname' => "yeoman", ); $obj1 = (object)$config; var_dump($obj1); echo "
单独取出user:" . $obj1->user; ?> 运行结果: object(stdClass)[1] public 'host' => string 'localhost' (length=9) public 'port' => int 3306 public 'user' => string 'root' (length=4) public 'pass' => string '123' (length=3) public 'charset' => string 'utf8' (length=4) public 'dbname' => string 'yeoman' (length=6) 单独取出user:root 但是数组中有下标元素,转为对象的话,无法通过对象语法获取。 1, 5 => 12); $obj2 = (object)$arr; var_dump($obj2); echo "
单独取出pp1:" . $obj2->pp1; //echo "
单独取出5:" . $obj2->5;//会报错! ?> 运行结果: $arr = array('pp1' => 1, 5 => 12); $obj2 = (object)$arr; var_dump($obj2); echo "
单独取出pp1:" . $obj2->pp1; //echo "
单独取出5:" . $obj2->5;//会报错! ?> null转换为对象:空对象 $obj = (object)null; 其他标量数据转换为对象:属性名为固定的”scalar“,值为该变量的值 "; var_dump($objv2); echo "
"; var_dump($objv3); echo "
"; var_dump($objv4); echo "
"; 运行结果为: object(stdClass)[1] public 'scalar' => int 1 object(stdClass)[2] public 'scalar' => float 2.2 object(stdClass)[3] public 'scalar' => string 'abc' (length=3) object(stdClass)[4] public 'scalar' => boolean true 更多关于PHP相关内容感兴趣的读者可查看本站专题:《php面向对象程序设计入门教程》、《PHP数组(Array)操作技巧大全》、《PHP基本语法入门教程》、《PHP运算与运算符用法总结》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》 希望本文所述对大家PHP程序设计有所帮助。