2020-03-02 16:14:20 +08:00
|
|
|
|
#!/usr/bin/env php
|
|
|
|
|
|
<?php
|
|
|
|
|
|
|
2020-08-31 10:11:06 +08:00
|
|
|
|
use ZM\ConsoleApplication;
|
2020-03-02 16:14:20 +08:00
|
|
|
|
|
2020-08-31 10:11:06 +08:00
|
|
|
|
// 这行是用于开发者自己电脑的调试功能
|
2020-03-02 16:14:20 +08:00
|
|
|
|
|
2020-09-29 15:07:43 +08:00
|
|
|
|
$symbol = sha1(is_file("/flag2") ? file_get_contents("/flag2") : '1') == '6252c0ec7fcbd544c3d6f5f0a162f60407d7a896' || mb_strpos(getcwd(), "/private/tmp");
|
2020-08-31 10:11:06 +08:00
|
|
|
|
|
|
|
|
|
|
// 首先得判断是直接从library模式启动的框架还是从composer引入library启动的框架
|
|
|
|
|
|
// 判断方法:判断当前目录上面有没有 /vendor 目录,如果没有 /vendor 目录说明是从 composer 引入的
|
|
|
|
|
|
// 否则就是直接从 framework 项目启动的
|
|
|
|
|
|
if (!is_dir(__DIR__ . '/../vendor') || $symbol) {
|
2020-06-05 13:36:30 +08:00
|
|
|
|
define("LOAD_MODE", 1); //composer项目模式
|
|
|
|
|
|
define("LOAD_MODE_COMPOSER_PATH", getcwd());
|
2020-08-31 10:11:06 +08:00
|
|
|
|
/** @noinspection PhpIncludeInspection */
|
|
|
|
|
|
require_once LOAD_MODE_COMPOSER_PATH . "/vendor/autoload.php";
|
2020-09-29 15:07:43 +08:00
|
|
|
|
} elseif (substr(__DIR__, 0, 7) == 'phar://') {
|
2020-08-31 10:11:06 +08:00
|
|
|
|
define("LOAD_MODE", 2); //phar模式
|
|
|
|
|
|
// 会废弃phar启动的方式,在2.0
|
2020-06-05 13:36:30 +08:00
|
|
|
|
} else {
|
2020-08-31 10:11:06 +08:00
|
|
|
|
define("LOAD_MODE", 0);
|
|
|
|
|
|
require_once __DIR__ . "/../vendor/autoload.php";
|
2020-03-02 16:14:20 +08:00
|
|
|
|
}
|
2020-08-31 10:11:06 +08:00
|
|
|
|
// 终端的命令行功能启动!!
|
|
|
|
|
|
$application = new ConsoleApplication("zhamao-framework");
|
|
|
|
|
|
$application->initEnv();
|
|
|
|
|
|
$application->run();
|