要創(chuàng)建一個新的對象 object,使用 new
語句實例化一個類:
<?php
class foo
{
function do_foo()
{
echo "Doing foo.";
}
}
$bar = new foo;
$bar->do_foo();
?>
詳細討論參見手冊中類與對象章節(jié)。
如果將一個對象轉換成對象,它將不會有任何變化。如果其它任何類型的值被轉換成對象,將會創(chuàng)建一個內置類
stdClass
的實例。如果該值為
null
,則新的實例為空。
array 轉換成 object 將使鍵名成為屬性名并具有相對應的值。注意:在這個例子里, 使用 PHP 7.2.0 之前的版本,數(shù)字鍵只能通過迭代訪問。
<?php
$obj = (object) array('1' => 'foo');
var_dump(isset($obj->{'1'})); // PHP 7.2.0 后輸出 'bool(true)',之前版本會輸出 'bool(false)'
var_dump(key($obj)); // PHP 7.2.0 后輸出 'string(1) "1"',之前版本輸出 'int(1)'
?>
對于其他值,會包含進成員變量名 scalar
。
<?php
$obj = (object) 'ciao';
echo $obj->scalar; // 輸出 'ciao'
?>