CodeIgniter RestServer 使用教程
1. 项目的目录结构及介绍
CodeIgniter RestServer 项目的目录结构如下:
codeigniter-restserver/
├── application/
│ ├── config/
│ ├── controllers/
│ ├── libraries/
│ ├── models/
│ ├── views/
├── system/
├── vendor/
├── .gitignore
├── composer.json
├── LICENSE
├── README.md
目录介绍
- application/: 包含所有的应用程序特定文件,如控制器、模型、视图和配置文件。
- system/: 包含 CodeIgniter 的核心系统文件。
- vendor/: 包含通过 Composer 安装的依赖项。
- .gitignore: 指定 Git 版本控制系统忽略的文件和目录。
- composer.json: 定义项目的依赖关系和其他元数据。
- LICENSE: 项目的许可证文件。
- README.md: 项目的自述文件,包含项目的基本信息和使用说明。
2. 项目的启动文件介绍
CodeIgniter RestServer 的启动文件是 index.php
,通常位于项目根目录下。这个文件负责初始化 CodeIgniter 框架并加载必要的组件。
<?php
define('ENVIRONMENT', isset($_SERVER['CI_ENV']) ? $_SERVER['CI_ENV'] : 'development');
switch (ENVIRONMENT) {
case 'development':
error_reporting(-1);
ini_set('display_errors', 1);
break;
case 'testing':
case 'production':
ini_set('display_errors', 0);
if (version_compare(PHP_VERSION, '5.3', '>=')) {
error_reporting(E_ALL & ~E_NOTICE & ~E_DEPRECATED & ~E_STRICT & ~E_USER_NOTICE & ~E_USER_DEPRECATED);
} else {
error_reporting(E_ALL & ~E_NOTICE & ~E_STRICT & ~E_USER_NOTICE);
}
break;
default:
header('HTTP/1.1 503 Service Unavailable.', TRUE, 503);
echo 'The application environment is not set correctly.';
exit(1); // EXIT_ERROR
}
$system_path = 'system';
$application_folder = 'application';
$view_folder = '';
if (defined('STDIN')) {
chdir(dirname(__FILE__));
}
if (($_temp = realpath($system_path)) !== FALSE) {
$system_path = $_temp . '/';
} else {
$system_path = rtrim($system_path, '/') . '/';
}
if ( ! is_dir($system_path)) {
header('HTTP/1.1 503 Service Unavailable.', TRUE, 503);
echo 'Your system folder path does not appear to be set correctly. Please open the following file and correct this: ' . pathinfo(__FILE__, PATHINFO_BASENAME);
exit(3); // EXIT_CONFIG
}
define('SELF', pathinfo(__FILE__, PATHINFO_BASENAME));
define('BASEPATH', str_replace('\\', '/', $system_path));
define('FCPATH', dirname(__FILE__) . '/');
define('SYSDIR', trim(strrchr(trim(BASEPATH, '/'), '/'), '/'));
if (is_dir($application_folder)) {
if (($_temp = realpath($application_folder)) !== FALSE) {
$application_folder = $_temp;
}
define('APPPATH', $application_folder . '/');
} else {
if ( ! is_dir(BASEPATH . $application_folder . '/')) {
header('HTTP/1.1 503 Service Unavailable.', TRUE, 503);
echo 'Your application folder path does not appear to be set correctly. Please open the following file and correct this: ' . SELF;
exit(3); // EXIT_CONFIG
}
define('APPPATH', BASEPATH . $application_folder . '/');
}
require_once BASEPATH . 'core/CodeIgniter.php';