批改状态:合格
老师批语:
(1)本质:将目录文件复制到当前位置
// 1. includeinclude __DIR__ .'/inc/f1.php';// $username = '王五';echo $username. '<hr>';$email = include __DIR__ .'/inc/f1.php';echo $email.'<hr>';// 2. requirerequire __DIR__.'/inc/f1.php';echo $username. '<hr>';$email = require __DIR__ .'/inc/f1.php';echo $email.'<hr>';


(2)作用域:作用在当前引进页面
<!DOCTYPE html><html lang="zh-CN"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title></head><body><!-- 页眉 --><header><nav><a href="">首页</a><a href="">教学视频</a><a href="">学习路径</a><a href="">技术文章</a></nav></header>
<!-- 页脚 --><footer><div class="copy">php中文网版权所以©2022-2025</div></footer></body></html>
<!-- 页眉 --><?php require __DIR__.'/inc/header.php' ?><!-- 主体 --><main><ul><li><a href="">最新文章1</a></li><li><a href="">最新文章2</a></li><li><a href="">最新文章3</a></li><li><a href="">最新文章4</a></li><li><a href="">最新文章5</a></li><li><a href="">最新文章6</a></li><li><a href="">最新文章7</a></li><li><a href="">最新文章8</a></li><li><a href="">最新文章9</a></li><li><a href="">最新文章10</a></li></ul></main><!-- 页脚 --><?php require __DIR__.'/inc/footer.php' ?>

(1)class、new 类的声明与实例
// 类声明// 1. classclass Goods{// ...}// 类的实例化:创建对象的过称// 2. new$goods = new Goods;var_dump($goods);

(2)public 公有,可供外部使用
class User1{// publicpublic $username = '张三';}$user1 = new User1();echo $user1->username.'<hr>';

(3)private 私有,仅限当前类中使用
class User1{// publicpublic $username = '张三';// privateprivate $age = 18;}$user1 = new User1();echo $user1->username.'<hr>';echo $user1->age.'<hr>';

class User1{// publicpublic $username = '张三';// privateprivate $age = 18;public function getAge(){return $this->age;}}$user1 = new User1();echo $user1->username.'<hr>';// echo $user1->age.'<hr>';echo '获取当前类中的age:'.$user1->getAge().'<hr>';

(4)protected 继承(extends), 可在本类或子类中使用, 不对外公开
class User1{// public 公共/公共,默认public $username = '张三';// private 私有,仅限在当前类中使用private $age = 18;// protected 继承, 可在本类或子类中使用, 不对外公开protected $id = 1;public function getAge(){return $this->age;}}$user1 = new User1();echo $user1->username.'<hr>';// echo $user1->age.'<hr>';echo '获取当前类中的age:'.$user1->getAge().'<hr>';echo $user1->id.'<hr>';

class User1{// public 公共/公共,默认public $username = '张三';// private 私有,仅限在当前类中使用private $age = 18;// protected 继承, 可在本类或子类中使用, 不对外公开protected $id = 1;public function getAge(){return $this->age;}public function getId(){return $this->id;}}$user1 = new User1();echo $user1->username.'<hr>';// echo $user1->age.'<hr>';echo '获取当前类中的age:'.$user1->getAge().'<hr>';// echo $user1->id.'<hr>';echo '获取当前类中的id:'.$user1->getId().'<hr>';

class Stu extends User1{public function getId(){return $this->id;}}$stu = new Stu();echo '子类中使用父类的id:'.$stu->getId().'<hr>';

(5)abstract 抽象
abstract class Demo1{}var_dump(new Demo1);

class Demo2 extends Demo1{}echo 'Demo2的父类是:'.get_parent_class(new Demo2).'<hr>';

(6)interface 接口
// interface: 声明接口interface iUser{// 1. 类常量const NATION = 'CHINA';// 2. 必须是抽象,必须是publicpublic function m1();public function m2();}
(1)用普通类来实现一个接口, 必须将接口中的所有抽象方法全部实现
class Demo11 implements iUser{public function m1(){}// public function m2()// {// }}

(2)用抽象类来实现一个接口, 允许有不实现的抽象成员
abstract class Demo22 implements iUser{public function m1(){}}
(3)可通过接口,间接实现多继承
interface A{}interface B{}interface C{}class Test implements A, B, C{}// 查看当前类实现的所有接口$arr = class_implements('Test');printf('<pre>%s</pre>', print_r($arr, true));

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号