春节临近,每逢节假日期间计算机病毒就开始蠢蠢欲动起来。近日,反病毒专家提醒广大电脑用户,春节期间需要防范两类病毒,确保电脑使用安全。 据反病毒专家严绍文介绍,节日期间可能发作的病毒有以下两类。 一类病毒是传统的病毒,蠕虫、木马等,利用网络共享、邮件、系统漏洞、网页等途径进行传播; 二是利用祝贺春节名义来传播的病毒,此类病毒一般通过邮件发送一个含有病毒的连接,用户点击该连接就会中毒;此类病毒大多利用操作系统的漏洞来配合传播; 以上病毒大多还具有删除安全软件的特点,同时会借助一些通常的途径比如QQ、MSN等进行传播,使用QQ、MSN即时聊天工具的用户要特别注意防范。 此外,广大网民还需要...
http://www.jb51.net//article/3906.htm
PHP4中已经有了重载的语法来建立对于外部对象模型的映射,就像Java和COM那样.PHP5带来了强大的面向对象重载,允许程序员建立自定义的行为来访问属性和调用方法.重载可以通过__get,__set,and__call几个特殊方法来进行.当Zend引擎试图访问一个成员并没有找到时,PHP将会调用这些方法.在例6.14中,__get和__set代替所有对属性变量数组的访问.如果必要,你可以实现任何类型你想要的过滤.例如,脚本可以禁止设置属性值,在开始时用一定的前缀或包含一定类型的值.__call方法说明了你如何调用未经定义的方法.你调用未定义方法时,方法名和方法接收的参...
http://www.jb51.net//article/1589.htm
当你尝试使用一个未定义的类时,PHP会报告一个致命错误.解决方法就是添加一个类,可以用include包含一个文件.毕竟你知道要用到哪个类.但是,PHP提供了类的自动加载功能,这可以节省编程的时间.当你尝试使用一个PHP没有组织到的类,它会寻找一个__autoload的全局函数.如果存在这个函数,PHP会用一个参数来调用它,参数即类的名称.例子6.15说明了__autoload是如何使用的.它假设当前目录下每个文件对应一个类.当脚本尝试来产生一个类User的实例,PHP会执行__autoload.脚本假设class_User.php中定义有User类..不管调用时是大写还...
http://www.jb51.net//article/1588.htm
命名变量,函数和类是挺困难的,除了要考虑到变量的名称要易于理解,还要担心是否这个名称在其它某个地方已经使用过.在一小段脚本中,第二个问题是基本问题.当你考虑重用你的代码,在这之后的项目代码必须避免使用你用过的命名.通常来说,可重用的代码总是包含在函数或类中,需要处理许多可能发生的命名冲突.但函数和类之间也可能发生命名冲突.你可以尝试避免出现这种情况,通过在所有类前添加前缀的方法,或者你可以使用namespace语句.Namespace关键字给一块代码命名.在这个代码块外部,脚本必须用操作符::加上命名空间的名称来引用这个代码块.引用静态的类成员也是用相同的方法.在命名空...
http://www.jb51.net//article/1587.htm
串行化可以把变量包括对象,转化成连续bytes数据.你可以将串行化后的变量存在一个文件里或在网络上传输.然后再反串行化还原为原来的数据.你在反串行化类的对象之前定义的类,PHP可以成功地存储其对象的属性和方法.有时你可能需要一个对象在反串行化后立即执行.为了这样的目的,PHP会自动寻找__sleep和__wakeup方法.当一个对象被串行化,PHP会调用__sleep方法(如果存在的话).在反串行化一个对象后,PHP会调用__wakeup方法.这两个方法都不接受参数.__sleep方法必须返回一个数组,包含需要串行化的属性.PHP会抛弃其它属性的值.如果没有__slee...
http://www.jb51.net//article/1581.htm
类的静态成员与一般的类成员不同:静态成员与对象的实例无关,只与类本身有关.他们用来实现类要封装的功能和数据,但不包括特定对象的功能和数据.静态成员包括静态方法和静态属性.静态属性包含在类中要封装的数据,可以由所有类的实例共享.实际上,除了属于一个固定的类并限制访问方式外,类的静态属性非常类似于函数的全局变量我们在下例中使用了一个静态属性Counter::$count.它属于Counter类,而不属于任何Counter的实例.你不能用this来引用它,但可以用self或其它有效的命名表达.在例子中,getCount方法返回self::$count,而不是Counter::...
http://www.jb51.net//article/1580.htm
如果你在一个类中声明一个函数,命名为__construct,这个函数将被当成是一个构造函数并在建立一个对象实例时被执行.清楚地说,__是两个下划线.就像其它任何函数一样,构造函数可能有参数或者默认值.你可以定义一个类来建立一个对象并将其属性全放在一个语句(statement)中.你也可以定义一个名为__destruct的函数,PHP将在对象被销毁前调用这个函数.它称为析构函数.继承是类的一个强大功能.一个类(子类/派生类)可以继承另一类(父类/基类)的功能.派生类将包含有基类的所有属性和方法,并可以在派生类中加上其他属性和方法.你也可以覆写基类的方法和属性.就像3.1....
http://www.jb51.net//article/1540.htm
PHP5有一个单重继承的,限制访问的,可以重载的对象模型.本章稍后会详细讨论的”继承”,包含类间的父-子关系.另外,PHP支持对属性和方法的限制性访问.你可以声明成员为private,不允许外部类访问.最后,PHP允许一个子类从它的父类中重载成员.file://haohappy注:PHP4中没有private,只有public.private对于更好地实现封装很有好处.PHP5的对象模型把对象看成与任何其它数据类型不同,通过引用来传递.PHP不要求你通过引用(reference)显性传递和返回对象.在本章的最后将会详细阐述基于句柄的对象模型.它是PHP5中最重要的新特性...
http://www.jb51.net//article/1537.htm
当你声明一个类,你需要列出对象应有的所有变量和所有函数—被称为属性和方法.3.1.1中显示了一个类的构成.注意在大括号({})内你只能声明变量或者函数.3.1.2中显示了如何在一个类中定义三个属性和两个方法.3.1.1classNameextendsAnotherClass{AccessVariableDeclarationAccessFunctionDeclaration}3.1.2<?php//定义一个跟踪用户的类classUser{//属性public$name;private$password,$lastLogin;//方法publicfunction__...
http://www.jb51.net//article/1536.htm
PHP5中的对象模型通过引用来调用对象,但有时你可能想建立一个对象的副本,并希望原来的对象的改变不影响到副本.为了这样的目的,PHP定义了一个特殊的方法,称为__clone.像__construct和__destruct一样,前面有两个下划线.默认地,用__clone方法将建立一个与原对象拥有相同属性和方法的对象.如果你想在克隆时改变默认的内容,你要在__clone中覆写(属性或方法).克隆的方法可以没有参数,但它同时包含this和that指针(that指向被复制的对象).如果你选择克隆自己,你要小心复制任何你要你的对象包含的信息,从that到this.如果你用__cl...
http://www.jb51.net//article/1534.htm
一个对象实例的属性是变量,就像PHP的其他变量一样.但是你必须使用->运算符来引用它们.不需要在属性前使用美元符$.例如,6.1中打印User对象的name属性那一行.可以联用->,如果一个对象的属性包含了一个对象,你可以使用两个->运算符来得到内部对象的属性.你甚至可以用双重引用的字符串来放置这些表达式.看6.5中的例子,对象House中的属性room包含了一组Room对象.访问方法和访问属性类似.->运算符用来指向实例的方法.在例子6.1中调用getLastLogin就是.方法执行起来和类外的函数几乎相同.如果一个类从另一类中继承而来,父类中...
http://www.jb51.net//article/1533.htm
