/* Regular does not have admin powers */ $regular = new User( array( "name" => "Regular" ) ); $regular->getAdmin(); // breaks our code
/* Normal User class */ class User { private $name; function __construct( $attribs ) { $this->name= $attribs["name"]; } function getName() { return $this->name; } }
/* Admin is a User, but with additional functionality */ class Admin extends User { function getAdmin() { return "Administrator"; } }正如你可以看到,我们的管理对象继承了功能的用户级使用关键字扩展。最重要的是,我们的管理是提供了一些额外的功能。在这种情况下,我们的用户级被称为超。在PHP中,一类只可继承父之一。还有更多细微的继承,但本教程将只支付基本知识。在一个更现实的情况下,我们将更多的功能代码仅管理员。也许就像:/* Additional functionality for just Administrators */ class Admin extends User { function banUser( $id ) { /* code to ban user */ } function unbanUser( $id ) { /* code to unban or activate user account */ } //... }为了时间和重点,这些方法并没有真正得到编码。但是,这应该给你一些深入了解如何继承的作品,为什么它可以是有益的。继续在少数离别的话和方向。分词到现在为止,你应该了解对象,如何创建它们,以及如何进入其属性和方法。此教程绝非无所不包。事实上,这仅仅是冰山的一角,目的是这样。为进一步读,我建议PHP5 :对象,模式,与实践的马特Zandstra 。此外,你可以阅读对象提供的文件上php.net 。正如你开始了解更多的面向对象和你的PHP代码变得更加面向对象,你会发现更多的代码重用,并最终节省时间和能源。预现有的代码资源,如梨和PHPClasses.org将变得越来越有用。