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