X Tutup
Skip to content

Commit 1fe13d0

Browse files
committed
3.2版本提交
1 parent 2937914 commit 1fe13d0

File tree

134 files changed

+23918
-6477
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

134 files changed

+23918
-6477
lines changed

Application/README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
项目目录

Application/index.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+

Public/README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
资源文件目录

ThinkPHP/Common/build.php

Lines changed: 102 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,102 @@
1+
<?php
2+
// +----------------------------------------------------------------------
3+
// | ThinkPHP [ WE CAN DO IT JUST THINK IT ]
4+
// +----------------------------------------------------------------------
5+
// | Copyright (c) 2006-2013 http://thinkphp.cn All rights reserved.
6+
// +----------------------------------------------------------------------
7+
// | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )
8+
// +----------------------------------------------------------------------
9+
// | Author: liu21st <liu21st@gmail.com>
10+
// +----------------------------------------------------------------------
11+
12+
/**
13+
* ThinkPHP 目录创建和初始化
14+
*/
15+
defined('THINK_PATH') or exit();
16+
17+
// 检查应用目录结构 如果不存在则自动创建
18+
if(!is_dir(COMMON_PATH)) {
19+
// 创建目录结构
20+
build_app_dir();
21+
}elseif(!is_dir(LOG_PATH)){
22+
// 检查缓存目录
23+
check_runtime();
24+
}
25+
26+
// 检查缓存目录(Runtime) 如果不存在则自动创建
27+
function check_runtime() {
28+
if(!is_dir(RUNTIME_PATH)) {
29+
mkdir(RUNTIME_PATH);
30+
}elseif(!is_writeable(RUNTIME_PATH)) {
31+
header('Content-Type:text/html; charset=utf-8');
32+
exit('目录 [ '.RUNTIME_PATH.' ] 不可写!');
33+
}
34+
mkdir(CACHE_PATH); // 模板缓存目录
35+
if(!is_dir(LOG_PATH)) mkdir(LOG_PATH); // 日志目录
36+
if(!is_dir(TEMP_PATH)) mkdir(TEMP_PATH); // 数据缓存目录
37+
if(!is_dir(DATA_PATH)) mkdir(DATA_PATH); // 数据文件目录
38+
return true;
39+
}
40+
41+
// 创建应用目录结构
42+
function build_app_dir() {
43+
// 没有创建的话自动创建
44+
if(!is_dir(APP_PATH)) mkdir(APP_PATH,0755,true);
45+
if(is_writeable(APP_PATH)) {
46+
$dirs = array(
47+
COMMON_PATH,
48+
COMMON_PATH.'Common/',
49+
COMMON_PATH.'Conf/',
50+
APP_PATH.C('DEFAULT_MODULE').'/',
51+
APP_PATH.C('DEFAULT_MODULE').'/Common/',
52+
APP_PATH.C('DEFAULT_MODULE').'/Controller/',
53+
APP_PATH.C('DEFAULT_MODULE').'/Model/',
54+
APP_PATH.C('DEFAULT_MODULE').'/Conf/',
55+
APP_PATH.C('DEFAULT_MODULE').'/View/',
56+
RUNTIME_PATH,
57+
CACHE_PATH,
58+
LOG_PATH,
59+
TEMP_PATH,
60+
DATA_PATH,
61+
);
62+
foreach ($dirs as $dir){
63+
if(!is_dir($dir)) mkdir($dir,0755,true);
64+
}
65+
// 写入目录安全文件
66+
build_dir_secure($dirs);
67+
// 写入初始配置文件
68+
if(!is_file(COMMON_PATH.'Conf/config.php'))
69+
file_put_contents(COMMON_PATH.'Conf/config.php',"<?php\nreturn array(\n\t//'配置项'=>'配置值'\n);");
70+
// 写入测试Action
71+
build_first_action();
72+
}else{
73+
header('Content-Type:text/html; charset=utf-8');
74+
exit('应用目录['.APP_PATH.']不可写,目录无法自动生成!<BR>请手动生成项目目录~');
75+
}
76+
}
77+
78+
// 创建测试Action
79+
function build_first_action() {
80+
$file = APP_PATH.C('DEFAULT_MODULE').'/Controller/IndexController'.EXT;
81+
if(!is_file($file)){
82+
$content = file_get_contents(THINK_PATH.'Tpl/default_index.tpl');
83+
file_put_contents($file,$content);
84+
}
85+
}
86+
87+
// 生成目录安全文件
88+
function build_dir_secure($dirs=array()) {
89+
// 目录安全写入(默认开启)
90+
defined('BUILD_DIR_SECURE') or define('BUILD_DIR_SECURE', true);
91+
if(BUILD_DIR_SECURE) {
92+
defined('DIR_SECURE_FILENAME') or define('DIR_SECURE_FILENAME', 'index.html');
93+
defined('DIR_SECURE_CONTENT') or define('DIR_SECURE_CONTENT', ' ');
94+
// 自动写入目录安全文件
95+
$content = DIR_SECURE_CONTENT;
96+
$files = explode(',', DIR_SECURE_FILENAME);
97+
foreach ($files as $filename){
98+
foreach ($dirs as $dir)
99+
file_put_contents($dir.$filename,$content);
100+
}
101+
}
102+
}

0 commit comments

Comments
 (0)
X Tutup