Reply to Re: [PHP] PHP 5 Question about OO

Your name:

Reply:


Posted by Marcus Bointon on 06/01/05 12:21

On 1 Jun 2005, at 09:01, janbro wrote:

> require (Class2.php);
> class Class1{
> private function ... {
> $refClass2 = new Class2;
> }
> }
>
> Now my question, is it possible to skip that require/ include part? In
> Java you don't need that, as class and file names are identical.

PHP doesn't have this luxury - people can call files whatever they
like. However, PHP5 does have a nice feature to deal with this. In
your class1 class, create a function called __autoload like this:

function __autoload($class_name) {
require_once $class_name . '.php';
}

In this case when you ask for a new class2 and you've not required it
before, it will automatically call __autoload with $class_name set to
'Class2', which then requires the class file according to the pattern
used in the function, in this case 'Class2.php'. Note that while PHP
is not case sensitive to class names, the file system you're on
probably is, so keep your case consistent throughout.

Docs are here: http://www.php.net/manual/en/language.oop5.autoload.php

Marcus
--
Marcus Bointon
Synchromedia Limited: Putting you in the picture
marcus@synchromedia.co.uk | http://www.synchromedia.co.uk

[Back to original message]


Удаленная работа для программистов  •  Как заработать на Google AdSense  •  England, UK  •  статьи на английском  •  PHP MySQL CMS Apache Oscommerce  •  Online Business Knowledge Base  •  DVD MP3 AVI MP4 players codecs conversion help
Home  •  Search  •  Site Map  •  Set as Homepage  •  Add to Favourites

Copyright © 2005-2006 Powered by Custom PHP Programming

Сайт изготовлен в Студии Валентина Петручека
изготовление и поддержка веб-сайтов, разработка программного обеспечения, поисковая оптимизация