创建类
<??php
class Demo{
}
类方法
<?php
class Demo{
public function name($name)
{
echo '我的名字是:'.$name;
}
}
类成员
<?php
class Demo{
public $sex = '男';
public function name($name)
{
echo '我的名字是:'.$name;
}
}
实例化
class Demo{
public $sex = '男';
public function name($name)
{
echo '我的名字是:'.$name;
}
}
$a = new Demo();
//调用类方法
$a->name('张三');
//调用类成员
echo '我的性别是:'.$a->$sex;
构造方法
class Demo{
public $name;
public $age;
public $sex;
//构造方法,在实例化类的时候调用
public function __construct($name,$age,$sex)
{
$this->name = $name;
$this->age = $age;
$this->sex = $sex;
}
public function getInfo()
{
echo '我的名字是:'.$this->name . ',我今年' . $this->age . '岁,我是' . $this->sex '生';
}
}
//有构造方法,必须在实例化的时候根据构造方法的形参传值
$a = new Demo('张三',18,'男');
//调用类方法
$a->getInfo();
命名空间
1.命名空间: 解决全局成员的命名冲突问题, 借鉴了文件目录的基本思想
2.目录: 同一目录下不允许重名文件, 但不同目录下, 允许同名文件存在
3.空间: 同一空间内不允许成员重名, 但不同空间内, 允许同名成员存在
4.命名空间使用 “namespace” 关键字声明
namespace test;
class Demo{
public $name;
public $age;
public $sex;
//构造方法,在实例化类的时候调用
public function __construct($name,$age,$sex)
{
$this->name = $name;
$this->age = $age;
$this->sex = $sex;
}
public function getInfo()
{
echo '我的名字是:'.$this->name . ',我今年' . $this->age . '岁,我是' . $this->sex '生';
}
}
//有构造方法,必须在实例化的时候根据构造方法的形参传值
$a = new Demo('张三',18,'男');
//调用类方法
$a->getInfo();