php学习之旅第六天

1.文件包含实现方式
1.include’文件名’(include(‘文件名’))

找不到文件警告错误,不会影响后续代码的继续执行

2.require ‘文件名’

之熬不到文件致命错误,后续代码终止执行

3.include_once ‘文件名’

只包含一次

4.require_once ‘文件名’

同上

注:
  1. 在保存结构和数据文件时,使用require
  2. 在保存外部可能存在文件时,使用include
  3. 尽可能不使用_once来进行文件包含:效率低,是否包含应由开发者自己控制
2.类

基本语法:class 类名{}
实例化:new 类名();
对象:$变量名 = new 类名();
流程:

  1. 创建类
  2. 通过new类名实例化对象得到类的具体对象
  3. 可以通过new实例化无限个对象
3.类成员
1.定义:定义在类结构内的一级成员

分类:

  1. 成员变量(属性):给对象存储数据的变量
  2. 成员函数(方法):给对象调用解决问题的函数
  3. 类常量:属于类内部的常量,语法:const 常量名 = 值

属性方法需要使用访问修饰限定符,用public修饰

2.成员访问:

属性和方法都属于对象访问,类常量属于类访问

#实例化
$object = new 类名();
#属性访问
$object -> 属性名;
#方法访问
$object -> 方法名([实参]);

增删改查:

class Buyer{
	public $name;
	public $money = 0;
	
	function display(){
		echo __CLASS__;
	}
	
	const BIG_NAME = 'BUYER';
}

$b = new Buyer();

echo $b -> money;

# 修改
$b -> money = 10;
# 增加
$b -> eye = 1;
# 查看
var_dump($b);
#删除
unset($b -> name);

#操作方法
$b -> display();
注:除了以上三个类成员,不能在类结构中直接写任何代码
访问属性时都不用带$符号
4.访问修饰限定符

定义:用在属性或者方法前的修饰关键字,用来控制方法或者属性的访问权限

分类:

  1. public:公有,类内和类外都可以访问
  2. protected:受保护,只允许在相关类内部访问(继承有用)
  3. private:私有,只允许在定义类内部访问(如类内方法可以访问)
注:属性必须要加访问修饰限定符,方法可以没有(默认public)
5.类内部访问对象

定义:$ this,方法内部内置的一个对象,会自动指向来调用方法的的对象
需要使用$ this引入对象

class Saler{
	public $count = 100;
	protected $discount = 0.8;
	private $money = 100;
	
	function getAll(){
		echo $this->count,$this->discount,$this->money;
	}
}

$s = new Saler();
$s ->getAll();
注:$this 代表的是对象,而 $this所在的环境为类内部的方法内部,所以 $this对象是在类内部访问,因此可以访问所有属性和方法,不受修饰限定符限制

一个类可以实例化多个对象,每个对象访问成员方法时,$this就代表当前 $this所在方法的外部对象

尽可能增加类对成员的控制,尽可能多的使用private,少使用public

6.构造方法
  1. 目的:实现对象的初始化
    构造方法通常是为了实现对象所需资源的初始化(属性),对象实例后会自动调用
  2. 构造方法本质为方法:
    1.受访问修饰限定符控制(对象产生的位置会产生改变)
  3. 方法实现:__construct()
class Saler{
	public $count;
	private $money;
	
	function __construct($count,$money){
		echo __CLASS__;
		$this-> count = $count;
		$this-> money = $money;
	}
}

$s1 = new Saler(100,100);
$s2 = new Saler(1,1);
var_dump($s1);
var_dump($s2);
7.对象传值

概念:保存对象的变量赋值给另一个变量
在php中,对象传值是引用传值,即两个变量指向同一个对象的内存地址,即:只有一个对象

8.范围解析操作符

需要访问类常量的时候使用范围解析操作符:类名::常量名 (对象名::常量名)

class Saler{
	const PI = 3.14;
}

$s = new Saler();

#echo $s->PI;  #无法访问

echo Saler::PI;
echo $s::PI
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值