1.php文件加载
文件加载: 可理解为把外部文件引用到当前文件中。
文件加载的可分为: “条件加载” 和 “强制加载” 二种方式
1.1条件加载
序号 |
语法 |
描述 |
特点 |
1 |
include |
条件加载 |
重复加载多个同名文件时,如果加载失败,也不会终止当前脚本 |
2 |
include_once |
去重(chong)条件加载 |
只能加载一个同名文件,如果加载失败,也不会终止当前脚本 |
1.2 强制加载
序号 |
语法 |
描述 |
特点 |
1 |
require |
强制加载 |
重复加载多个同名文件时,如果加载失败,则会终止当前脚本 |
2 |
require_once |
去重强制加载 |
只能加载一个同名文件,如果加载失败,则会终止当前脚本 |
//include加载
//以下三个都能加载出来
// include 'text1.php';
// include 'text1.php';
// include 'text1.php';
// include 如果加载失败,也不会终止当前脚本
// include 'text.php';
// echo 'php中文网';
//----------------------------------
//include_once 只能加载一个,去掉重复的
// include_once 'text1.php';
// include_once 'text1.php';
// include_once 'text1.php';
// echo 'php中文网';
// include_once 如果加载失败,也不会终止当前脚本
// include_once 'text.php';
// echo 'php中文网';
//---------------------------------
//requier 以下三个都能加载出来
// require 'text1.php';
// require 'text1.php';
// require 'text1.php';
//requier 如果加载失败,会终止当前脚本
// require 'text.php';
// echo 'php中文网';
//-----------------------------
// require_once 只能加载一个,去掉重复的
// require_once 'text1.php';
// require_once 'text1.php';
// require_once 'text1.php';
// echo 'php中文网';
// require_once 如果加载失败,会终止当前脚本
// require_once 'text.php';
// echo 'php中文网';
1.3 文件加载与作用域
只要在同一个作用域,文件外部变量可以在被加载的文件中使用
//demo1.php文件代码
//全局作用域
$name = '八戒网';
//加载text2.php 文件,可以访问demo1.php文件中的$name变量。因为他们同属于全局作用域
include 'text2.php';
//函数作用域
function test1(){
include 'text2.php';
echo $age;
}
test1();
//************************
//text2.php 代码
echo '站点名称:' ,$name ;
$age = 20;
2.类的声明与实例化
2.1 概念
序号 |
名称 |
描述 |
关键字 |
1 |
类 class |
对象的模板 |
class |
2 |
对象instance |
类的实例 |
new |
类与对象界限并不清晰,在不影响理解前提下,常用类代表实例来引用类成员
对象与类的某一个实例绑定, 所以对象与实例可视为同义词,互换并不影响
2.2 按访问权限分类
序号 |
名称 |
关键字 |
类外部 |
类内部 |
类继承上下文 |
描述 |
1 |
公开成员 |
public |
允许 |
允许 |
允许 |
默认 |
2 |
受保护成员 |
protected |
禁止 |
允许 |
允许 |
封装 |
3 |
私有成员 |
private |
禁止 |
允许 |
禁止 |
封装 |
//类的声明与实例化
// 通过 class关键字, 声明一个GetText{} 类
class GetText{
//访问限制符:
// 1.public 公开成员
//类属性: 类中变量
public $id = '101';
public $name= '猪八戒';
public $eamli = 'bj@qq.com';
//非法属性值
//不能用变量
//public $age=$var;
//不能用类属性/类方法
//public $age=$this->name;
//不能用表达式
//public $age=$ages*2;
//不能用函数调用
//public $age=time();
//静态属性 static 关键字定义
public static $xa='西安';
//抽象属性
//没有被初始化,默认值就是null
//public $salary;
}
//类实例化
$gettext = new GetText();
echo $gettext->id = 103;
echo $gettext->name;
//访问静态属性:使用范围解析符,双冒号::
echo GetText::$xa;
echo "编号:{$gettext->id},姓名:{$gettext->name}, 邮箱:{$gettext->eamli}";
总结:了解条件加载与强制加载的区别,以及对类的声明,实例化,属性值有了初步了解。