Re: include file in a class with global/parent scope?

From: Date: Tue, 16 Jun 2009 16:02:09 +0000
Subject: Re: include file in a class with global/parent scope?
References: 1 2 3  Groups: php.general 
Request: Send a blank email to php-general+get-294102@lists.php.net to get a copy of this message
Daniel Kolbo wrote: > Hello, > > I've cleaned up my question a bit. > > I want the included file which is called within a method of a class to > have the same scope as the instantiation of the class's object. That > is, i want a class to include a file in the calling object's scope. How > would one do this? > > 'test.php' > <?php > class CSomeClass { > public function cinclude() { > include('vars.php'); > } > } > > $object = new CSomeClass; > $object->cinclude(); > echo $vars;//i want this to print 'hi' > include('vars.php'); > echo "obvious $vars"; > ?> > > 'vars.php' > <?php > $vars = "hi"; > ?> > > OUTPUT: > Notice: Undefined variable: vars in ...\test.php on line 10 > obvious hi > > DESIRED OUTPUT: > hi > obvious hi > > Thanks, > dK Should get you started: //one way <?php class CSomeClass { public function cinclude() { include('vars.php'); return get_defined_vars(); } } $object = new CSomeClass; $inc_vars = $object->cinclude(); echo $inc_vars['vars'];//i want this to print 'hi' ---or--- //another way <?php class CSomeClass { var $inc_vars; public function cinclude() { include('vars.php'); $this->inc_vars = get_defined_vars(); } } $object = new CSomeClass; $object->cinclude(); echo $object->inc_vars['vars'];//i want this to print 'hi' -- Thanks! -Shawn http://www.spidean.com

« previous php.general (#294102) next »