CI 프레임 워 크 학습 노트(2)-입구 파일 index.php
                                            
 6865 단어  CI 프레임 워 크입구 파일
                    
 
 CI 프레임 워 크 의 입구 파일 로 서 원본 코드 를 읽 으 면 자 연 스 럽 게 시 작 됩 니 다.소스 코드 를 읽 는 과정 에서 우 리 는 한 줄 한 줄 해석 하지 않 고 핵심 적 인 기능 과 실현 만 설명 한다.
1.프로그램 환경 설정
define('ENVIRONMENT', 'development');
default:   exit('The application environment is not set correctly.'); 
 이 를 통 해 알 수 있 듯 이 많은 구성 요소 들 이 ENVIRONMENT 에 의존 하고 있 습 니 다.예 를 들 어 system/config/Common.php 를 보면 설정 파일 을 도입 하 는 코드 가 있 습 니 다.이렇게 이 루어 집 니 다.
if ( ! defined('ENVIRONMENT') OR ! file_exists($file_path = APPPATH.'config/'.ENVIRONMENT.'/config.php'))
{
  $file_path = APPPATH.'config/config.php';
}2.시스템 디 렉 터 리 와 응용 프로그램 디 렉 터 리 설정
CI 프레임 워 크 는 시스템 의 핵심 소스 코드 와 응용 프로그램 코드 를 분리 해서 배치 할 수 있 습 니 다.그러나 시스템 의 system 폴 더 와 application 폴 더 를 설정 해 야 합 니 다.(마찬가지 로 폴 더 이름 은'system'과'application'을 사용 하지 않 고 합 법 적 인 폴 더 이름 일 수 있 습 니 다.)
$system_path = 'system';
$application_folder = 'application';
if (defined('STDIN'))
{
   chdir(dirname(__FILE__));
}3.system 디 렉 터 리 의 정확성 검증 과 application 디 렉 터 리 검증
(1).system 디 렉 터 리 의 정확성 검증
Realpath 는 디 렉 터 리 나 파일 의 절대 디 렉 터 리 이름 을 되 돌려 줍 니 다(마지막/없 음)
if (realpath($system_path) !== FALSE)
{
  $system_path = realpath($system_path).'/';
}
$system_path = rtrim($system_path, '/').'/';
if ( ! is_dir($system_path))
{ 
  exit("xxxxxxxx");
}a.SELF(index.php 파일 을 가리 키 는 말)
b.EXT(deprecated,폐기,관심 필요 없 음)
c.BASEPATH(system 폴 더 의 경로)
d.FCPATH(전단 컨트롤 러 의 경로)
e.SYSDIR(시스템 디 렉 터 리 이름)
f.APPPATH(응용 프로그램 경로)
모든 정 의 된 상수 보기:
Print_r(get_defined_constants()); 
 (2)application 의 디 렉 터 리 검증.
코드 가 비교적 간단 해서 너무 많은 설명 을 하지 않 습 니 다.
if (is_dir($application_folder))
{
  define('APPPATH', $application_folder.'/');
}
else
{
  if ( ! is_dir(BASEPATH.$application_folder.'/'))
  {
    exit("Your application folder path does not appear to be set correctly. Please open the following file and correct this: ".SELF);
  }
  define('APPPATH', BASEPATH.$application_folder.'/');
}
require_once BASEPATH.'core/CodeIgniter.php';마지막 으로 관례 에 따라 전체 파일 의 원본 코드(주석 판 간소화)를 붙 입 니 다.
<?php
define('ENVIRONMENT', 'development');
if (defined('ENVIRONMENT'))
{
  switch (ENVIRONMENT)
  {
    case 'development':
      error_reporting(E_ALL);
    break;
  
    case 'testing':
    case 'production':
      error_reporting(0);
    break;
    default:
      exit('The application environment is not set correctly.');
  }
}
/*
 * SYSTEM FOLDER NAME
 */
$system_path = 'system';
/*
 * APPLICATION FOLDER NAME
 */
$application_folder = 'application';
/*
 * Resolve the system path for increased reliability
 */
if (defined('STDIN'))
{
  chdir(dirname(__FILE__));
}
if (realpath($system_path) !== FALSE)
{
  $system_path = realpath($system_path).'/';
}
$system_path = rtrim($system_path, '/').'/';
if ( ! is_dir($system_path))
{
  exit("xxxxxxxx");
}
/*
 * set the main path constants
 */
// The name of THIS file
define('SELF', pathinfo(__FILE__, PATHINFO_BASENAME));
// this global constant is deprecataaed.
define('EXT', '.php');
// Path to the system folder
define('BASEPATH', str_replace("\\", "/", $system_path));
// Path to the front controller (this file)
define('FCPATH', str_replace(SELF, '', __FILE__));
// Name of the "system folder"
define('SYSDIR', trim(strrchr(trim(BASEPATH, '/'), '/'), '/'));
// The path to the "application" folder
if (is_dir($application_folder))
{
  define('APPPATH', $application_folder.'/');
}
else
{
  if ( ! is_dir(BASEPATH.$application_folder.'/'))
  {
    exit("Your application folder path does not appear to be set correctly. Please open the following file and correct this: ".SELF);
  }
  define('APPPATH', BASEPATH.$application_folder.'/');
}
require_once BASEPATH.'core/CodeIgniter.php';이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
CI 프레임 워 크 인증 코드 CAPTCHA 보조 함수 용법 인 스 턴 스본 논문 의 사례 는 CI 프레임 워 크 인증 코드 CAPTCHA 보조 함수 의 용법 을 설명 하여 여러분 께 참고 하도록 공유 합 니 다.구체 적 으로 다음 과 같다. CAPTCHA 보조 함 수 를 사용 하면 인증...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.