그누5 루트에 있는 config.php 파일 이해안되는 부분 질문할게요
본문
config.php 라인 75줄~78줄에 있는 소스코드인데요.
if (isset($g5_path['path'])) {
define('G5_PATH', $g5_path['path']);
} else {
define('G5_PATH', '');
이 구문이 이해가 안가는게요. config.php 파일엔 $g5_path['path'] 라는 배열이 선언이 안되어있는데
어디서 나온거고, 무엇을 의미하는구문인가요. ? 생초보니깐 너그럽게 이해해주시고 답변좀 부탁드리겠습니다.
답변 2
common.php 에서 먼저 g5_path() 구문을 호출해서 넣네요
function g5_path()
{
$result['path'] = str_replace('\\', '/', dirname(__FILE__));
$tilde_remove = preg_replace('/^\/\~[^\/]+(.*)$/', '$1', $_SERVER['SCRIPT_NAME']);
$document_root = str_replace($tilde_remove, '', $_SERVER['SCRIPT_FILENAME']);
$root = str_replace($document_root, '', $result['path']);
$port = $_SERVER['SERVER_PORT'] != 80 ? ':'.$_SERVER['SERVER_PORT'] : '';
$http = 'http' . ((isset($_SERVER['HTTPS']) && $_SERVER['HTTPS']=='on') ? 's' : '') . '://';
$user = str_replace(str_replace($document_root, '', $_SERVER['SCRIPT_FILENAME']), '', $_SERVER['SCRIPT_NAME']);
$host = isset($_SERVER['HTTP_HOST']) ? $_SERVER['HTTP_HOST'] : $_SERVER['SERVER_NAME'];
if(isset($_SERVER['HTTP_HOST']) && preg_match('/:[0-9]+$/', $host))
$host = preg_replace('/:[0-9]+$/', '', $host);
$result['url'] = $http.$host.$port.$user.$root;
return $result;
}
$g5_path = g5_path();
include_once($g5_path['path'].'/config.php'); // 설정 파일
http://php.net/manual/kr/language.constants.syntax.php
위 링크를 참조해서 상수에 대한 이해를 먼저 하셔오