this oop-script still doesn't work
| From: | Tularis | Date: | Tue, 19 Nov 2002 22:13:32 +0000 |
| Subject: | this oop-script still doesn't work | ||
| Groups: | php.general | ||
| Request: | Send a blank email to php-general+get-125147@lists.php.net to get a copy of this message | ||
ok, I have gotten great help here already, but it still doesn't work, it returns a object not found error (on the $foo->bar() line). I want to change $overall->foo->bar() to $foo->bar... any tips? or help??
thanx!
- Tularis
<?php
class overall {
var $loaded;
function load($class){
eval("global \$$class;"); // This didn't work either
//$this->loaded[] = $class; // see the comments with the foreach()
eval("\$this->$class = new $class;");
return true;
}
}
class foo {
var $bar;
// Constructor
function bar(){
if(!isset($this->bar)){
$this->bar = 1;
}else{
$this->bar++;
}
echo $this->bar."<br>";
}
}
// Start actual loading
$overall = new overall;
$overall->load('foo');
/*
foreach($overall->loaded as $key=>$val){ // didn't work.. I commented this out, because I thought it MIGHT interfere with the other way
$val =& $overall->$val; // both don't work though :(
}
*/
$overall->foo->bar();
$overall->foo->bar();
$overall->foo->bar();
$overall->foo->bar();
// it doesn't understand this
$foo->bar();
?>