|
Posted by Mikhail Kovalev on 09/08/07 19:26
On 8 Sep, 21:12, Mikhail Kovalev <mikhail_kova...@mail.ru> wrote:
> On 8 Sep, 20:49, "Rik Wasmus" <luiheidsgoe...@hotmail.com> wrote:
>
>
>
> > On Sat, 08 Sep 2007 19:33:44 +0200, Mikhail Kovalev
>
> > <mikhail_kova...@mail.ru> wrote:
> > > Hi all,
> > > I have a file which is to be included in another script and which
> > > takes several seconds to load(!), and which is actually not always
> > > used by the script, so instead of using include or include_once in the
> > > beginning, i'm using include_once() within a function, which is called
> > > on demand...
> > > The problem is the new data has the scope of the function, and when
> > > the same function is called again, the data is lost....
>
> > Well, you could assign it to static variable(s) in your function.
>
> > function foo(){
> > static $cache;
> > if(!$cache){
> > $cache = include('/path/to/file'); //let the include file return the
> > variables
> > }
> > return $cache;
>
> > }
>
> > --
> > Rik Wasmus
>
> return $cache?
> My function returns something else...
> Mmm, doesn't seem to work even with the return part.
>
> The functions from the included file are preserved, but the variables
> which are declared in that file are lost. Ive tried declaring them
> static directly inside the included file, but with no luck.....
>
> Btw, the function in question here is called from another function...
I guess what I'm looking for is how to make "once-included" variables
global from inside the function....
Navigation:
[Reply to this message]
|