Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is it possible to have two classes with the same name if they're in different folders?

I was wondering if there is anything wrong with having two classes with the same name in PHP if they're in different sub folders, other than the obvious "human factor" of editing the wrong file by mistake?

I have looked for other posts relating to this, here and elsewhere on the web, but I didn't find any that could answer this specific question. I did however find this Autoload classes from different folders very helpful though, and in fact it solved one of my other questions.

like image 323
Chris Avatar asked Apr 13 '11 12:04

Chris


2 Answers

This is possible to have classes with same name even in same folder.

But Make sure you have loaded only one class in the PHP script at a time.

They can not be loaded in the same script at same time.

PHP does not know if you have created two classes with same name but the fact is PHP will not load them in same script. You can use one class at a time.

You can also look at namespaces in php.

like image 95
Shakti Singh Avatar answered Oct 07 '22 13:10

Shakti Singh


That's where namespaces come in. http://www.php.net/manual/en/language.namespaces.rationale.php http://www.php.net/manual/en/language.namespaces.basics.php

This allows you to differentiate between the two classes of the same name.

like image 30
Abuh Avatar answered Oct 07 '22 14:10

Abuh