Re: Help with Class

From: Date: Fri, 09 Sep 2005 08:33:45 +0000
Subject: Re: Help with Class
References: 1  Groups: php.general 
Request: Send a blank email to php-general+get-222070@lists.php.net to get a copy of this message
Ian Barnes wrote:
Hi Ryan, I am including a different class.inc.php file each time the foreach loops. Each one sits in a different dir. Yes, I do get that error. My understanding of OOP is that I could null the $sdk variable and re-init it when the loop starts again.. You'd be right if the name of class was unique in each class.inc.php. However, PHP doesn't allow the same class name to be used more than once, regardless of the include file it's from. It's the same with function names. The problem is if php allowed you to have two (or more) classes with the same name it wouldn't know which one to choose when you used that name - in your case it is obvious because you want to use the most recently declared class but php can't be excepected to guess that.
You can, however, do something like: <?php class ipbsdk { ... } foreach (..) { $var = new ipbsdk(); } ?> Which would set $var to a new instance of the class every time you loop. You could null the variable every time but it's not required. One solution for you might be to redesign the code so you only need one ipbsdk class , which could take the path as an argument. This class could then be repeatedly instantiated with a different path each loop, something like this: foreach (...) { ... $SDK = new ipbsdk($fetchd['path']); ... } I think your current strategy will lead to a dead end, unless someone else can see something I'm missing (which is highly likely!). Hope this helps a little. Ryan

« previous php.general (#222070) next »