suyumen
目前主要在学习web相关

php的类与对象

2021-07-08 php常识
Word count: 387 | Reading time: 1min

因为碰到反序列化的题会碰到php的类相关的知识,有时候看代码不太懂,所以特意学习一下php的类与对象。军训太忙了,中午要洗衣服睡觉,晚上要搞志协的工作然后就又要睡觉了……水成两篇,下一篇记序列化相关的东西。


类定义

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
class Site {
/* 成员变量 */
var $url;
var $title;

/* 成员函数 */
function setUrl($par){
$this->url = $par;
}

function getUrl(){
echo $this->url . PHP_EOL;
}

function setTitle($par){
$this->title = $par;
}

function getTitle(){
echo $this->title . PHP_EOL;
}
}
?>

PHP_EOL—–>换行符。

类的实例化

1
$first = new Site;

调用成员方法

1
$first->setTitle( "111111" );

构造方法(php5起)

1
2
3
4
function __construct( $par1, $par2 ) {
$this->url = $par1;
$this->title = $par2;
}

特殊的地方在于,构造方法的名字是固定的,是__construct

析构方法(php5起)

1
void __destruct ( void )

析构方法名固定,是__destruct,无参数。

继承

1
2
3
class Child extends Parent {
// 代码部分
}

不支持多继承。

方法重写

从父类继承的方法不能满足子类的需求,可以对其进行改写。
感觉和java差不多。


常用到的应该就这些。

另外关于php的大小写敏感问题:

1.变量名区分大小写;
2.常量名区分大小写;
3.数组索引(键名)区分大小写;
4.函数名、方法名、类名不区分大小写;
5.魔术常量不区分大小写;

参考

1.PHP 面向对象
2.PHP命名大小写敏感规则

Author: suyumen

Link: https://suyumen.github.io/2021/07/08/2021-07-08-php%E7%9A%84%E7%B1%BB%E4%B8%8E%E5%AF%B9%E8%B1%A1/

Copyright: All articles in this blog are licensed under CC BY-NC-SA 3.0 unless stating additionally.

< PreviousPost
php序列化与反序列化
NextPost >
羊城杯2020Easyphp2
CATALOG
  1. 1. 类定义
  2. 2. 类的实例化
  3. 3. 调用成员方法
  4. 4. 构造方法(php5起)
  5. 5. 析构方法(php5起)
  6. 6. 继承
  7. 7. 方法重写
    1. 7.1. 参考