//创建一个类
class Student{
//定义属性
public $name = 'XuGZh';
public $age = 20;
public $sex = '男';
//定义方法
public function getInfo(){
//当前对象中访问自己属性用伪变量$this
return 'my name:'.$this->name.'<br>'.'my age:'.$this->age.'<br>'.'my sex:'.$this->sex;
}
}
对象初始化:要创建一个新的对象 object,使用 new 语句实例化一个类:
//实例化,并输出属性的值
$obj = new Student();
echo $obj->name;//XuGZh
echo $obj->age;//20
echo $obj->sex;//男
//访问方法
echo $obj->getInfo();
//my name:XuGZh
//my age:20
//my sex:男
//stdClass相当于是PHP中的一个基类,StdClass类没有任何成员方法,也没有任何成员属性,实例化后就是一个空对象
$obj = new stdClass();
//添加属性
$obj->title ='PHP学习ING';
//添加方法:基于属性的方式添加
$obj->server = function (){
return '业精于勤荒于嬉,行成于思毁于随';
};
//访问属性
print $obj->title;//
//访问方法:call_user_func是PHP的内置函数,该函数允许用户调用直接写的函数并传入一定的参数
print call_user_func($obj->server);//
//数组转对象
print_r((object)[10,20,30]);//stdClass Object ( [0] => 10 [1] => 20 [2] => 30 )
//字符串转对象
//对象自动生成一个scalar属性用来存储字符串
print_r((object)'PHP学习');//stdClass Object ( [scalar] => PHP学习 )
//空字符串:scalar属性为空值
print_r((object)' ');//stdClass Object ( [scalar] => )
//int转对象
print_r((object)100);//stdClass Object ( [scalar] => 100 )
//null转对象:为空对象
print_r((object)null);//stdClass Object ( )