Blogger Information
Blog 43
fans 1
comment 0
visits 33845
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
PHP 文件加载与对象基础
蔚蓝世纪
Original
563 people have browsed it

一、条件加载和强制加载

  1. 如果我们需要在网站的多张页面上,引用相同的PHPHTML或文本的话,可以使用include,include_once,或 require语句。也就是说,通过 include require 语句,可以将 PHP 文件的内容插入另一个 PHP 文件,实现嵌套使用。

include 和 require 语句是相同的,但是错误处理方面却是不同的:

  1. include:条件加载,只生成警告(E_WARNING),并且脚本会继续。
  2. include_once:去重加载,只允许加载一次文件。
  3. require:强制加载,会生成致命错误(E_COMPILE_ERROR)并停止脚本。
  4. require_once:强制去重加载。
代码举例:
  1. include 'custom.php';
  2. include 'custom.php';//脚本继续加载
  3. include_once 'custom.php';//只允许加载一次文件,下面语句不加载。
  4. include_once 'custom.php';
  5. echo '这是个小试验';
  6. echo '<hr>';
  7. require 'custom.php';
  8. require 'a.php';//因为找不到a.php这个文件,所以出现错误提示,后面的echo内容不再执行。
  9. echo "这是个小试验";
  10. echo '<hr>';
效果展示:

二、类与对象

类:用来描述具有相同属性和方法的对象的集合。类的定义包含了数据的形式以及对数据的操作。每个类的定义都以关键字 class 开头,后面跟着类名,后面跟着一对花括号,里面包含有类的属性与方法的定义。一个类可以包含有属于自己的常量,变量(即“属性”)以及函数。
类的语法:
  1. class favs
  2. {
  3. public $x;
  4. public $y = "这是一个变量(属性)";
  5. public function mylove ($a, $b) {//这里也可以写函数
  6. [..]
  7. }
  8. [..]
  9. }
对象:是类的实例。实例化一个对象需要使用new关键字。即类是一个虚影,而对象可以将这个虚影实体化。
  1. class favs
  2. {
  3. }
  4. $favs = new favs();

三、类属性及属性的访问控制

  1. 类属性分为:常规属性(动态属性)、静态属性、抽象属性。
  2. 在类的成员方法里面,可以用 ->(对象运算符):$this->property(其中 property 是该属性名)这种方式来访问非静态属性。
  3. 静态属性则是用 ::(双冒号):self::$property 来访问。
代码举例:
  1. class user
  2. {
  3. //1.动态属性:即常规属性
  4. public $name='王小丁';
  5. public $sex='男';
  6. public $age="22";
  7. public $options = [1,2,3];
  8. public $output = <<< 'RES'(这个是nowdoc类型,类似于单引号的用法)
  9. <h3>可爱的家</h3>
  10. RES;
  11. //2.静态属性:可以更新,在创建时一定要赋值,要么有默认值,本质上是一个变量,而不是常量。例如下面,我们可以更换国籍和姓名等属性的值。
  12. public static $nationality = "中国/CHINA";
  13. //3.抽象属性:没有值,没有被初始化,默认值是null。
  14. public $salary;
  15. }
  16. $user = new User();
  17. $user->name = "李玉湖";
  18. //->:对象运算符/对象成员访问符
  19. echo "姓名:{$user->name},年龄:{$user->age}<br>";
  20. echo $user->output . '<br>';
  21. //访问静态属性:使用范围解析符,双冒号::
  22. User::$nationality = '英国/ENGLAND';
  23. echo User::$nationality;
  24. var_dump($user->salary);
  25. var_dump(is_null($user->salary));
效果展示:

四、类属性的访问控制

  1. 属性的访问控制:类属性必须定义为公有,受保护,私有之一。
  2. 如果用 var 定义,则被视为公有。
  3. 对属性或方法的访问控制,是通过在前面添加关键字 public(公有),protected(受保护)或 private(私有)来实现的。
  4. 被定义为公有的类成员可以在任何地方被访问。
  5. 被定义为受保护的类成员则可以被其自身以及其子类和父类访问。
  6. 被定义为私有的类成员则只能被其定义所在的类访问。
  1. class Myfav
  2. {
  3. // 声明一个公有的方法
  4. public function Myfav1() { }
  5. // 声明一个受保护的方法
  6. protected function Myfav2() { }
  7. // 声明一个私有的方法
  8. private function Myfav3() { }
  9. // 此方法为公有
  10. function goods()
  11. {
  12. $this->Myfav1();
  13. $this->Myfav2();
  14. $this->Myfav3();
  15. }
  16. }
  17. $Myfav = new Myfav;
  18. $Myfav->Myfav1(); // 这行能被正常执行
  19. $Myfav->Myfav2(); // 这行会产生一个致命错误
  20. $Myfav->Myfav3(); // 这行会产生一个致命错误
  21. $Myfav->goods(); // 公有,受保护,私有都可以执行

五、总结

1.类和对象听起来简单,初接触是发蒙的。但是类和对象与字符串函数和数组函数类似,就好像语文里面学的诗歌、小说、散文等属于PHP下不同的体裁,既然体裁不同,那么书写方法就不同,各有一套自己的规则。
2.以上举例的代码中红色字体要特别注意,切记。
3.PHP中有预定义标识符,用户在编写代码时要避免给类、常量或者变量起这些名字,否则易出现混淆。

Correcting teacher:天蓬老师天蓬老师

Correction status:qualified

Teacher's comments:对于新知识 , 要么恐惧, 要么好奇, 任何一种行为都是正常的
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post