php加载与类基础
- 文件加载可以想象成其他文件内容展示在当前文档中,相当于把别人的东西拿过来用
- 根据加载方式的不同,我们分为条件加载和强制加载
条件加载
include
只要在文档头部加上,include 'custom.php
,即可加载文件,写上两遍,表示执行两次,不会去重,且出现错误继续执行;
示例:
// 条件加载:include
include 'custom.php';
include 'custom.php';
include_once 'custom.php';
// 用变量方式创建文件名,并加载
$file = 'custom.php';
include $file;
// 去重加载,由于不存在文件,程序报错,但继续执行
$file = 'cutom';
include $file.'.php';
echo '程序出现错误,继续执行';
输出
这是别人的
这是别人的
这是别人的
Warning: include(cutom.php): failed to open stream: No such file or directory in D:\phpstudy_pro\WWW\xp11.cn\0427\demo1.php on line 13
Warning: include(): Failed opening 'cutom.php' for inclusion (include_path='.;C:\php\pear') in D:\phpstudy_pro\WWW\xp11.cn\0427\demo1.php on line 13
程序出现错误,继续执行
include_once
通过上面的案例,可以看到,如果页面已经加载过一次,用include_once
加载,就不会加载出来,这样的好处就是防止页面加载多次,但是出现错误照样会执行
require强制加载
require
与include
的不同之处,就是出现错误
,终止程序执行,下面通过一个程序来了解一下
示例:
// 这就是强制执行,一旦出现错误,中断程序
// 强制加载
require 'custom.php';
require 'custom.php';
// 可以看到,到此为止,没有执行加载程序
require_once 'custom.php';
// 故意输错文件名,
require 'cunto.php';
// 可以看到后面的语句没有执行
echo '程序出现错误,继续执行';
输出
这是别人的
这是别人的
Warning: require(cunto.php): failed to open stream: No such file or directory in D:\phpstudy_pro\WWW\xp11.cn\0427\demo2.php on line 11
Fatal error: require(): Failed opening required 'cunto.php' (include_path='.;C:\php\pear') in D:\phpstudy_pro\WWW\xp11.cn\0427\demo2.php on line 11
php类与对象
类就是一个抽线的东西,就好比车子,由车子可以衍生出好多的品牌等,衍生的东西用php的话说,就是对象,实例化,下面通过一个例子加深印象
序号 | 名称 | 定义方式 | 解释 |
---|---|---|---|
1 | 类 | class |
抽象的东西 |
2 | 对象 | $anna = new User() |
具体的东西 |
案例:
class User
{
public $name = '张三';
public $salary;
}
$user = new User;
$user -> name = '张三三';
属性值与访问
属性值我们可以想象成车子的零件,由很多的东西组成,在php中我们就是用$
符来定义,在php中叫变量,但在类中就是属性值,对象的属性值。
序号 | 名称 | 定义方式 | 解释 | 访问方式 |
---|---|---|---|---|
1 | 公共属性 | public $age = '22'; |
相当于普通变量的定义,只是前面加了一个控制符 | $user -> age = '10'; |
2 | 静态属性 | public static $nationality = 'japan'; |
保持不变的变量 | echo User::$nationality; |
示例
class User
{
public $name = '张三';
public $age = '22';
public $options = [1,2,3];
public static $nationality = 'japan';
public $salary;
}
$user = new User;
$user -> age = '10';
echo '名字:{$user->name},年龄:{$user->age}<br>';
// 访问静态属性 使用范围解析附,双冒号::
// User::$nationality = 'rissia';
echo User::$nationality;
输出
年纪10名字张三
名字:{$user -> name},年龄:{$user -> age}
japan
总结
通过几个简单的案例,让我对面向对象有了初步的认识,这个编程思想非常接近生活,通过简单的代码,实现了一个类的编写,还有成员的访问,如果将它用在实际开发中,一定会大放光彩。