Example #1
0
$std4->username = '******';
$array = array($std1, $std2, $std3, $std4);
foreach ($array as $obj) {
    echo $obj->userId, '--', $obj->username, '<br/><br/>';
}
//print_r($array);
//对象的属性可以是数组
class test1
{
    public $users = array('Tom', 'John', 'Rose');
    function fun1()
    {
        $std1 = new stdClass();
        $std1->userId = 5;
        $std1->username = '******';
        $std2 = new stdClass();
        $std2->userId = 9;
        $std2->username = '******';
        $std3 = new stdClass();
        $std3->userId = 22;
        $std3->username = '******';
        $std4 = new stdClass();
        $std4->userId = 36;
        $std4->username = '******';
        return array($std1, $std2, $std3, $std4);
    }
}
$t = new test1();
echo $t->users[1], '<br/><br/>';
echo $t->fun1()[2]->username, '<br/><br/>';
Example #2
0
        return $obj;
    }
    function fun2()
    {
        echo 'BBB';
    }
}
class test2
{
    function fun3()
    {
        echo 'AAAA';
    }
    function fun4()
    {
        echo '123';
    }
}
class test3
{
    function fun5()
    {
        echo '我是test3里fun5()';
    }
}
$t = new test1();
//链式写法
$t->obj->fun5();
//$t的的属性返回值为对象,即可以继续访问属性
$t->fun1()->fun3();
//$t的方法的返回值也是对象,即也可以再次调用方法