Correcting teacher:PHPz
Correction status:qualified
Teacher's comments:
如果用 include 语句引用某个文件并且 PHP 无法找到它会警告,脚本会继续执行,require则会报错,停止运行
如果是在一个函数中require/include一个文件,则此文件中的变量作用域是这个函数的范围.也就是说,这个文件只能访问此函数内在载入这个文件前所定义的变量,全局变量是不能访问的
如果是在全局环境中引入一个文件,那这个文件是可以直接访问全局变量的
<?php
// class声明类
class car {
// 公有成员,可以在类的外部,内部使用
public $name = 'hoho';
// 私有成员,只能在类内部使用
private $num = 0;
// 构造方法,方法名必须是__construct对象实例化时自动触发
public function __construct ($name , $age) {
$this->name = $name;
$this->age = $age;
}
public function getName () {
echo $this -> name , $this -> num;
}
// 获取器:__get 魔术方法
public function __get ($name) {
return $this->$name;
}
// __set和__get魔术方法在对象访问私有属性时自动触发
// 设置器 __set(变量,值)
public function __set ($name,$value) {
$this->$name = $value;
// 静态属性 只能通过类访问
public static $price = 3000;
public static function getPrice () {
// 使用self::指向当前类
return self::$price;
}
}
$honda = new car();
// 访问公有属性
echo $honda->name . '<br>';
// 调用公有方法
$honda->getName();
// 调用静态方法
echo '<br>' . car::getPrice();