Re: Including file Inside class



briandichiara wrote:
Right now, i have found this solution by adding
extract($GLOBALS);
to the top of my function.

I would now like to somehow get the variables inside the include file
back into the global variable scope, making this function work just
like a normal include file. Is that possible?

On Sep 8, 11:35 am, briandichiara <briandichi...@xxxxxxxxx> wrote:
I'm trying to setup a class that will allow a file to be included on
the page. It goes something like:

<?php
class myClass {
... ... ...
function includeFile(){
if(file_exists($this->include_file)){
include($this->include_file);
} else {
$this->error("file missing");
}
}
... ... ...

}

$foo = "bar";

$page = new myClass();
$page->include_file = "the_file.php";
$page->includeFile();
?>

// the_file.php
<?php echo $foo; ?>

It has something to do with variable scope and accessing globals or
something, I'm not sure. My question is how should I setup my class so
that I do not have to use "return" at the bottom of any files I want
to include with my class? I want the includes to function just like
normal includes.

I tried

<?php
class myClass {
... ... ...
function includeFile(){
global $GLOBALS;
global $HTTP_SERVER_VARS;
if(file_exists($this->include_file)){
include($this->include_file);
} else {
$this->error("file missing");
}
}
... ... ...

}

but that still doesn't make $foo print "bar".

Thanks for any help on how to accomplish this.



You need to rethink your approach.

I see what you're trying to do - but sometimes classes are not the right way to go. And this is one of them.

Leave your include() in the global scope and you won't have these problems.

--
==================
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
jstucklex@xxxxxxxxxxxxx
==================

.



Relevant Pages