开发者社区> 问答> 正文

thinkphp中为啥一写这个就能生成那个呢:报错

只要在index.php文件 中写上这个路径后,就能生成Index这个文件夹,
define('APP_PATH', './Index/');
这原理是啥呢

展开
收起
kun坤 2020-06-09 12:14:30 423 0
1 条回答
写回答
取消 提交回答
  • 看源码不难发现,有这行,不存在就帮你创建了

    if(!is_dir(APP_PATH)) mkdir(APP_PATH,0755,true);
    // 创建项目目录结构
    function build_app_dir() {
        // 没有创建项目目录的话自动创建
        if(!is_dir(APP_PATH)) mkdir(APP_PATH,0755,true);
        if(is_writeable(APP_PATH)) {
            $dirs  = array(
                LIB_PATH,
                RUNTIME_PATH,
                CONF_PATH,
                COMMON_PATH,
                LANG_PATH,
                CACHE_PATH,
                TMPL_PATH,
                TMPL_PATH.C('DEFAULT_THEME').'/',
                LOG_PATH,
                TEMP_PATH,
                DATA_PATH,
                LIB_PATH.'Model/',
                LIB_PATH.'Action/',
                LIB_PATH.'Behavior/',
                LIB_PATH.'Widget/',
                );
            foreach ($dirs as $dir){
                if(!is_dir($dir))  mkdir($dir,0755,true);
            }
            // 写入目录安全文件
            build_dir_secure($dirs);
            // 写入初始配置文件
            if(!is_file(CONF_PATH.'config.php'))
                file_put_contents(CONF_PATH.'config.php',"<?php\nreturn array(\n\t//'配置项'=>'配置值'\n);\n?>");
            // 写入测试Action
            if(!is_file(LIB_PATH.'Action/IndexAction.class.php'))
                build_first_action();
        }else{
            header('Content-Type:text/html; charset=utf-8');
            exit('项目目录不可写,目录无法自动生成!<BR>请使用项目生成器或者手动生成项目目录~');
        }
    }
    2020-06-09 12:14:36
    赞同 展开评论 打赏
问答分类:
PHP
问答地址:
问答排行榜
最热
最新

相关电子书

更多
Storm源码走读笔记 立即下载
如何做小程序性能优化 立即下载
Android插件化-从入门到"放弃" 立即下载