标签PHP下的文章

Jerry Bendy 发布于 07月03, 2013

PHP类实例教程(九):访问控制 private, protected, public

在PHP5中,可以在类的属性和方法前面加上一个修饰符(modifier),来对类进行一些访问上的控制。Public(公开):可以自由的在类的内部外部读取、修改。Private(私有):只能在这个当前类的内部读取、修改。Protected(受保护):能够在这个类和类的子类中读取和修改。Private的访问权限private不能直接被外部调用,只能由当前对象调用。前面介绍过关于封装的内容这里不再重复。比如你可以借钱给别人,但不希望别人知道你钱包里面有多少钱。我们把它用private隐藏起来。<?phpclassMoney{private$mymoney=1000;//我有点钱数//借出钱的方法publicfun...

阅读全文 »

Jerry Bendy 发布于 06月29, 2013

PHP类实例教程(七):析构函数与PHP的垃圾回收

析构函数:当某个对象成为垃圾或者当对象被显式销毁时执行。GC(GarbageCollector)在PHP中,没有任何变量指向这个对象时,这个对象就成为垃圾。PHP会将其在内存中销毁。这是PHP的GC(GarbageCollector)垃圾处理机制,防止内存溢出。当一个PHP线程结束时,当前占用的所有内存空间都会被销毁,当前程序中的所有对象同样被销毁。__destruct()析构函数,是在垃圾对象被回收时执行。析构函数也可以被显式调用,但不要这样去做。析构函数是由系统自动调用的,不要在程序中调用一个对象的析构函数。析构函数不能带有参数。程序结束前,所有对象被销毁。析构函数被调用了。<?phpclassPers...

阅读全文 »

Jerry Bendy 发布于 06月29, 2013

PHP类实例教程(八):类的继承

继承是面向对象最重要的特点之一,就是可以实现对类的复用。通过“继承”一个现有的类,可以使用已经定义的类中的方法和属性。继承而产生的类叫做子类。被继承的类,叫做父类,也被成为超类。PHP是单继承的,一个类只可以继承一个父类,但一个父类却可以被多个子类所继承。从子类的角度看,它“继承(inherit,extends)”自父类;而从父类的角度看,它“派生(derive)”子类。它们指的都是同一个动作,只是角度不同而已。子类不能继承父类的私有属性和私有方法。在PHP5中类的方法可以被继承,类的构造函数也能被继承。继承的简单例子我们分析自然界中的关系,动物类与犬类的关系。<?PhpclassAnimal{privat...

阅读全文 »

Jerry Bendy 发布于 06月26, 2013

PHP类实例教程(六):构造函数

PHP构造函数的声明与其它操作的声明一样,只是其名称必须是construct()。这是PHP5中的变化,以前的版本中,构造函数的名称必须与类名相同,这种在PHP5中仍然可以用,但现在以经很少有人用了,这样做的好处是可以使构造函数独立于类名,当类名发生改变时不需要改相应的构造函数名称了。为了向下兼容,如果一个类中没有名为construct()的方法,PHP将搜索一个php4中的写法,与类名相同名的构造方法。格式:function__construct([参数]){……}在一个类中只能声明一个构造方法,而是只有在每次创建对象的时候都会去调用一次构造方法,不能主动的调用这个方法,所以通常用它执行一些有用的初始化任务。比...

阅读全文 »

Jerry Bendy 发布于 06月24, 2013

PHP类实例教程(四):PHP5类中的方法

方法:对对象的属性进行的操作称为对象的方法(也称为行为/操作)。过程函数方法过程:过程是编制程序时定义的一个语句序列,用来完成某种指定的操作。函数:函数有返回值,也是定义的语句序列。方法:在面向对象概念中,类里面的一段语句序列。一般来说,在面向对象概念中,函数和方法两个名词是通用的。通过方法读取属性下面的例子将属性设置为private,同时声明了public的getName()方法,用来获取属性$name的值,调用getName()方法就会通过return$this->name返回$name的值。<?phpclassPerson{private$name="NoName";//private成员$na...

阅读全文 »

Jerry Bendy 发布于 06月24, 2013

PHP类实例教程(五):对象的比较

在PHP中有=赋值符号、==等于符号和===全等于符号,这些符号代表什么意思?当使用比较操作符(==)时,对象以一种很简单的规则比较:当两个对象有相同的属性和值,属于同一个类且被定义在相同的命名空间中,则两个对象相等。等于符号比较对象时,比较对象是否有相同的属性和值。注意:==比较两个不同的对象的时候,可能相等也可能不等。<?phpclassPerson{public$name="NickName";}//分别创建两个对象$p=newPerson();$p1=newPerson();//比较对象if($p==$p1){echo"/$p和/$p1内容一致";}else{echo"/$p和/$p1内容不一致";...

阅读全文 »

Jerry Bendy 发布于 06月22, 2013

PHP类实例教程(三):PHP5类中的属性

属性:用来描述对象的数据元素称为对象的属性(也称为数据/状态),在PHP5中,属性指在class中声明的变量。在声明变量时,必须使用publicprivateprotected之一进行修饰,定义变量的访问权限。(publicprivateprotected三者的区别将在以后讲解)属性的使用:通过引用变量的->符号调用变量指向对象的属性。在方法内部通过$this->符号调用同一对象的属性。<?phpclassPerson{public$name="NoName";//定义public属性$namepublic$age=20;//定义public属性$age}$p=newPerson();//创建对...

阅读全文 »

Jerry Bendy 发布于 06月21, 2013

PHP类实例教程(一):开始

从OOP(面向对象)的视角看,不应区分语言。无论是C++、无论是Java、无论是.net还有更多面向对象的语言,只要你了解了OOP的真谛,便可以跨越语言,让你的思想轻松的跳跃。便没有对于Java、.net、PHP之间谁强谁弱的争执了。 希望这个介绍PHP5面向对象编程(OOP)的资料能让初学者受益,能让更多的PHPer开始转向OOP的编程过程。 相对PHP4,PHP5在面向对象方面改变了很多。我们将只介绍PHP5环境下的面向对象。而我们必须改变自己来跟随PHP5的发展。如果代码结果在你的环境下执行不一致,请确认你的环境为PHP5。 我们假设读者没有任何面向对象的知识,即使你是第一次听...

阅读全文 »

Jerry Bendy 发布于 06月21, 2013

PHP类实例教程(二):类和对象的基础部分

EverythingisObject:万事万物皆对象面向对象的编程(OOP)思想力图使对计算机语言中对事物的描述与现实世界中该事物的本来面目尽可能的一致。(面向对象语言与我们的生活是相通的,面向对象语言学习起来其实很简单。在应用中更符合我们的生活逻辑。)Class/Object:类(class)和对象(object)是面向对象方法的核心概念。类是对一类事物描述,是抽象的、概念上的定义;(类好像是在图纸上设计的楼房,楼房设计出来了,但这个楼房并不存在。)对象是实际存在的该类事物的每个个体,因而也称实例(instance)。(对象是实实在在存在的,照着楼房的设计图纸,高楼盖起来,可以住进去了。在计算机中,可以理解为,...

阅读全文 »

Jerry Bendy 发布于 05月23, 2013

使用PHP发送邮件的两种方法

今天研究了一下使用PHP来发送电子邮件,总结了一下,有这么两种方法:一、使用PHP内置的mail()函数看了一下手册,就直接开始写代码了,如下$to="test@163.com";$subject="Test";$message="Thisisatestmail!";mail($to,$subject,$message);结果就直接报错,如下:Warning:mail()[function.mail]:Failedtoconnecttomailserverat"localhost"port25,verifyyour"SMTP"and"smtp_port"...

阅读全文 »