多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
使用`new`可以创建一个新的对象 ~~~php <?php class foo { function do() { echo "Action do"; } } $f = new foo; $f->do(); ~~~ #### 转换为对象 如果将一个对象转换成对象,它将不会有任何变化。如果其它任何类型的值被转换成对象,将会创建一个内置类 stdClass 的实例。如果该值为 NULL,则新的实例为空。 array 转换成 object 将使键名成为属性名并具有相对应的值,除了数字键,不迭代就无法被访问。 在目录`/home/project`创建 a.php,并编辑内容 ~~~php <?php class A { } $a = new A(); $b = (object)$a; $c = (object)'A'; $d = (object)NULL; $e = (object)['hello'=>'world']; var_dump($a); var_dump($b); var_dump($c->scalar); var_dump($d); var_dump($e->hello); ~~~ 执行 php a.php 从结果中可以看出 * a 是对象,转换为对象后不发生变化,所以a是对象,转换为对象后不发生变化,所以a 等于$b * 字符串 "A" 转换为对象时,自动生成 scalar 属性 * 数组 \['hello'=>'world'\] 转换为对象时,键名 hello 作为属性,键值 world 为属性值