php从入门到放弃系列-03.php函数和面向对象
一、函数
php真正的威力源自它的函数,内置了1000个函数,可以参考PHP 参考手册。
自定义函数:
function functionName()
{
要执行的代码;
}
函数命名的准则:
- 函数的名称应该提示出它的功能
- 函数名称以字母或下划线开头(不能以数字开头)
二、面向对象
1、类基础语法:
<?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;
}
}
?>
解析如下:
类使用 class 关键字后加上类名定义。
类名后的一对大括号({})内可以定义变量和方法。
类的变量使用 var 来声明, 变量也可以初始化值。
函数定义类似 PHP 函数的定义,但函数只能通过该类及其实例化的对象访问。
- $this 代表自身的对象,访问对象成员使用->访问,不再是.
- PHP_EOL 为换行符
2、创建使用对象
类创建后,我们可以使用 new 运算符来实例化该类的对象,访问对象成员使用->访问,不再是.,使用new Site调用无参构造函数,可以不带括号:
$runoob = new Site;
$taobao = new Site;
$google = new Site;
$runoob->setTitle( "菜鸟教程" );
3、构造函数
使用_construct命名构造函数
function __construct( $par1, $par2 ) {
$this->url = $par1;
$this->title = $par2;
}
4、析构函数
与构造函数相反,当对象结束其生命周期时(例如对象所在的函数已调用完毕),系统自动执行析构函数
<?php
class MyDestructableClass {
function __construct() {
print "构造函数\n";
$this->name = "MyDestructableClass";
} function __destruct() {
print "销毁 " . $this->name . "\n";
}
} $obj = new MyDestructableClass();
?>
执行结果为:
构造函数
销毁 MyDestructableClass
5、继承
单根继承,继承使用关键字extends,实现接口使用implements
三、结束语
ok,php函数和对象已经学习完毕。注意,本教程属于快速学习教程,只关注一些语法重点和特殊、不同点。