Rumah  >  Artikel  >  pembangunan bahagian belakang  >  php中的对象分为哪两种

php中的对象分为哪两种

(*-*)浩
(*-*)浩asal
2019-09-06 11:24:233058semak imbas

php中的对象分为哪两种

内置对象:由PHP提供的,不依赖于宿主环境对象,这些对象在程序执行前就已经存在了。即无论在何种环境中都存在内置对象。

自定义对象:顾名思义,就是开发人员自己定义的对象。PHP允许使用自定义对象,使PHP应用及功能得到扩充

对象初始化(推荐学习:PHP编程从入门到精通

要创建一个新的对象 object,使用 new 语句实例化一个类:

<?php
class foo
{
    function do_foo()
    {
        echo "Doing foo."; 
    }
}

$bar = new foo;
$bar->do_foo();
?>

转换为对象 

如果将一个对象转换成对象,它将不会有任何变化。如果其它任何类型的值被转换成对象,将会创建一个内置类 stdClass 的实例。

如果该值为 NULL,则新的实例为空。 array 转换成 object 将使键名成为属性名并具有相对应的值。

注意:在这个例子里, 使用 PHP 7.2.0 之前的版本,数字键只能通过迭代访问。

<?php
$obj = (object) array(&#39;1&#39; => &#39;foo&#39;);
var_dump(isset($obj->{&#39;1&#39;})); // PHP 7.2.0 后输出 &#39;bool(true)&#39;,之前版本会输出 &#39;bool(false)&#39; 
var_dump(key($obj)); // PHP 7.2.0 后输出 &#39;string(1) "1"&#39;,之前版本输出  &#39;int(1)&#39; 
?>

对于其他值,会包含进成员变量名 scalar。

<?php
$obj = (object) &#39;ciao&#39;;
echo $obj->scalar;  // outputs &#39;ciao&#39;
?>

Atas ialah kandungan terperinci php中的对象分为哪两种. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn