<?php /** * 组件配置 */ $components = ["Crawler" => function ($maxLevel, $presentUrl, $sleepTime) { return new Core\Components\Crawler($maxLevel, $presentUrl, $sleepTime); }, "Config" => function () { return new Core\Components\Config(); }, "GuideUrl" => function () { return new Core\Components\GuideUrl(Core\Component::UrlQueue(), Core\Component::UrlRubbish()); }, "UrlQueue" => function () { return new Core\Components\UrlQueue(); }, "UrlRubbish" => function () { return new Core\Components\UrlRubbish(); }, "Hook" => function () { return new Core\Hook(); }, "Filter" => function () { return new Core\Components\HtmlDomFilter(); }, "Curl" => function () { return new Core\Curl(); }, "Explorer" => function () { return new Core\Components\Explorer(Core\Component::Curl()); }, "CorrectHref" => function () { return new Core\CorrectHref(); }, "DB" => function () { return new Extra\DB(); }, "HtmlDom" => function () { return new Extra\HtmlDom(); }];
<?php /** * 入口文件 * @author LL */ define("BASEDIR", __DIR__); /** * 设置程序运行时间为永久 */ set_time_limit(0); /** * 设置自动加载 */ include BASEDIR . '/Core/Loader.php'; spl_autoload_register("\\Core\\Loader::autoload"); /** * 引入注册组件文件 */ include BASEDIR . "/component.php"; /** * 注册一个Config组件 */ Core\ClassFactory::bind("Config", $components["Config"]); /** * 调用启动类,开始程序运行 */ new Core\Entrance(Core\Component::Config(), $components);