1.PHP中文件包含的实例

  1. <?php
  2. // 文件包含
  3. // 本质: 将目录文件复制到当前位置
  4. // 1. include
  5. // echo __DIR__ ;
  6. include __DIR__ .'/inc/f1.php';
  7. // $username = '张老师';
  8. // 被包含文件共享作用域
  9. echo $username . '<br>';
  10. // echo $email . '<br>';
  11. $email = include __DIR__ . '/inc/f1.php';
  12. echo $email . '<hr>';
  13. // 2. require
  14. require __DIR__ . '/inc/f1.php';
  15. echo $username . '<br>';
  16. $email = require __DIR__ . '/inc/f1.php';
  17. echo $email . '<br>';
  18. // 3. include,require区别
  19. // 区别1
  20. // include: 用到时再加载, 动态
  21. // require: 应该写到顶部, 静态
  22. // if (false) include __DIR__ . '/inc/f2.php';
  23. // echo $site . '<br>';
  24. // if (false) require __DIR__ . '/inc/f2.php';
  25. // echo $site . '<br>';
  26. // 区别2
  27. // include: 加载失败,继续执行不中断
  28. // requrie: 加载失败,中断退出
  29. // include __DIR__ . '/inc/hello.php';
  30. @include __DIR__ . '/inc/hello.php';
  31. echo 'include后面的代码' . '<br>';
  32. // require __DIR__ . '/inc/hello.php';
  33. // echo 'require后面的代码' . '<br>';
  34. // include_once: 只包含一次
  35. // require_once: 只包含一次

2.PHP中关键字

  1. <?php
  2. /**
  3. * 类的扩展/抽象/最终
  4. * 1. protected: 受保护/可继承
  5. * 2. extends: 扩展/继承
  6. * 3. parent: 父类引用
  7. * 4. abstract: 抽象
  8. * 5. final: 最终类
  9. */
  10. // 父类,基类,超类
  11. class Person
  12. {
  13. // proteced:成员可继承,可以在子类中使用
  14. protected $name;
  15. // private: 私有,仅限当前类,子类,外部都不可见
  16. private $id = 12345;
  17. // public: 类中,子类,类外都可见
  18. public function __construct($name){
  19. $this->name = $name;
  20. }
  21. // getInfo::proteced
  22. // 比protected再严格的是 private,比它更宽松的是:public
  23. protected function getInfo(){
  24. return $this->name;
  25. }
  26. }
  27. // 学生类
  28. // extends:Stu这个类,扩展了Person类的功能
  29. class Stu extends Person
  30. {
  31. // 1. 属性扩展
  32. private $lesson;
  33. private $score;
  34. // 2. 方法扩展、重写
  35. public function __construct($name,$lesson,$score)
  36. {
  37. // 引用了父类的构造方法
  38. // parent: 父类引用 Person
  39. parent::__construct($name);
  40. $this->lesson = $lesson;
  41. $this->score = $score;
  42. }
  43. public function getInfo()
  44. {
  45. // $this->name
  46. // return $this->name . "同学,($this->lesson : $this->score 分)";
  47. return parent::getInfo() . "同学,($this->lesson : $this->score 分)";
  48. }
  49. }
  50. $stu = new Stu('小王','php',88);
  51. echo $stu->getInfo();
  52. echo '<hr>';
  53. // 如果不想让用户直接使用父类,而必须通过继承/扩展的子类来间接使用
  54. // 将父类声明为一个抽象类
  55. abstract class Demo1{
  56. }
  57. // (new Demo1)
  58. class Demo2 extends Demo1{
  59. }
  60. echo 'Demo2的父类是:'.get_parent_class(new Demo2);
  61. echo '<hr>';
  62. abstract class Demo3{
  63. // 抽象方法:只有方法名,参数列表,没有具体实现(大括号)
  64. abstract protected function hello($name);
  65. }
  66. class Demo4 extends Demo3{
  67. // 工作类Demo4中必须实现父类中的抽象成员
  68. public function hello($name){
  69. return 'hello,'.$name;
  70. }
  71. }
  72. echo call_user_func([new Demo4,'hello'],'张老师');
  73. echo '<hr>';
  74. // interface接口实例
  75. interface A{}
  76. interface B{}
  77. interface C{}
  78. class Test implements A,B,C{
  79. }
  80. // 查看当前类实现的所有接口
  81. $arr = class_implements('Test');
  82. printf('<pre>%s</pre>',print_r($arr,true));
  83. // 如果一个类不用扩展,直接当成工作类/直接干活的,直接new
  84. // 为了防止被继承, 可声明为最终类
  85. // final class Demo5
  86. // {
  87. // }
  88. // class Demo6 extends Demo5
  89. // {
  90. // }

更多相关文章

  1. android 打开文件
  2. 剪切图片-扩展android 选择图片(从手机照相机或手机图片)
  3. 剪切图片-扩展android 选择图片(从手机照相机或手机图片)
  4. EditText的常用点,输入控制(包含inputType)
  5. Spring开始关注移动应用开发,发布Spring Mobile,Spring Android
  6. [ADB]ADB(Android(安卓)Debug Bridge)简介及基础(不包含命令)
  7. Netroid:强大、快速、易用、可扩展基于Volley实现的Android(安卓
  8. Spring开始关注移动应用开发,发布Spring Mobile,Spring Android
  9. Adroid环境

随机推荐

  1. 保证editView大小不变防止输入过多变形以
  2. Android百度地图相关内容汇总
  3. android 开发工具
  4. android meta-data 使用详解
  5. android shape
  6. Android layout布局属性、标签属性总结大
  7. Android之JNI续
  8. 【Android】Support 包里究竟有什么
  9. 哥哥手把手教你认识AIDL的详细使用,来了老
  10. android 横竖屏切换