仅在运行时需要时包含php文件

spr*_*aff 3 php

我有一些看起来大致像这样的PHP代码

require_once 'cache.php';
require_once 'generator.php';

if (cache_dirty ('foo')) {
    cache_update ('foo', generate_foo ());
}

print cache_read ('foo');
Run Code Online (Sandbox Code Playgroud)

我的问题是generator.php包含了大量的库,我不想加载/解析它,除非在运行时cache_dirty实际返回false.

我知道有些PHP预编译器可以提供帮助但是现在我需要快速修复.这可能吗?

Eug*_*eck 6

require_once 'cache.php';

if (cache_dirty ('foo')) {
    require_once 'generator.php';
    cache_update ('foo', generate_foo ());
}

print cache_read ('foo');
Run Code Online (Sandbox Code Playgroud)

很适合你的问题......


Pek*_*ica 5

正如PeeHaa在评论中已经说过,自动加载通常是理想的方式(尽管它需要重组你的应用程序.)

但是,在你展示的情况下,我不确定是什么让你无法做到

require_once 'cache.php';


if (cache_dirty ('foo')) {
     require_once 'generator.php';
     cache_update ('foo', generate_foo ());

}
Run Code Online (Sandbox Code Playgroud)