XE 전역 함수
XE의 전역 함수는 XE_ROOT/config/func.inc.php 파일에 정의되어 있습니다.
- debugPrint(mixed OBJECT)
디버깅 함수.
__DEBUG__의 값은 [XE_ROOT]/config/config.inc.php 파일에 1 이상으로 정의되어야 합니다. __DEBUG_OUTPUT__값에 따라 결과값을 얻는 방법을 선택할 수 있습니다.
- 0: 출력할 파일/_debug_message.php에 연결
- 1: HTML 바닥에 댓글로 출력(응답 타입이 HTML인 경우)
- 2: Firebug 콘솔에 출력(PHP >= 5.2.0. Firebug/FirePHP 플러그인 필요)
- instance getController(string MODULE_NAME)
모듈의 Controller 인스턴스를 가져옵니다.
// If you want to get the document.controller.class instance
$oDocumentController = &getController('document');
- instance getAdminController(string MODULE_NAME)
모듈의 Admin Controller 인스턴스를 가져옵니다.
// If you want to get the documentAdminController instance
$oDocumentAdminController = &getAdminController('document');
- instance getView(string MODULE_NAME)
모듈의 View 인스턴스를 가져옵니다.
// If you want to get the rssView instance
$oRssView = &getView('rss');
- instance getAdminView(string MODULE_NAME)
Admin View 인스턴스 함수를 가져옵니다.
// If you want to get the adminAdminView instance
$oAdminAdminView = &getAdminView('admin');
- instance getModel(string MODULE_NAME)
모듈의 Model 인스턴스를 가져옵니다.
// If you want to get the documentModel instance
$oDocumentModel = &getModel('document');
- instance getAdminModel(string MODULE_NAME)
모듈의 Admin Model 인스턴스를 가져옵니다.
// If you want to get the documentAdminModel instance
$oDocumentAdminModel = &getAdminModel('document');
- instance getAPI(string MODULE_NAME)
모듈의 API 인스턴스를 가져옵니다.
// If you want to get the boardAPI instance
$oBoardAPI = &getAPI('board');
- instance getWAP(string MODULE_NAME)
모듈의 WAP 인스턴스를 가져옵니다.
// If you want to get the boardWAP instance
$oBoardWAP = &getWAP('board');
- instance getClass(string MODULE_NAME)
모듈의 클래스 인스턴스를 가져옵니다.
// If you want to get the documentClass instance
$oDocumentClass = &getClass('document');
- Object executeQuery(string QUERY_ID, stdClass PARAM)
XML 쿼리를 실행합니다. 결과 데이터는 Object 클래스의 인스턴스로 반환됩니다. Object::toBool()가 FALSE이면 쿼리에 실패했음을 나타내고, TRUE이면 쿼리가 정상적으로 실행되었다는 뜻입니다.
select문의 결과 데이터는 Object::data 변수에 담아 객체에 반환됩니다.
- Object executeQueryArray(string QUERY_ID, stdClass PARAM)
executeQuery()와 같은 기능을 하지만, Object:data 변수의 결과가 한 행이더라도 배열로 반환합니다.
- int getNextSequence()
다음 시퀀스 번호를 가져옵니다.
XE는 내부적으로 하나의 시퀀스를 사용하며, member_srl, module_srl, document_srl 같은 모든 primary_key는 이 함수를 사용해서 설정합니다. 즉, [DB플래그]_documents 테이블에서 document_srl을 1씩 증가(auto increment)시키지 않고, 이 시퀀스 번호를 사용합니다.
- string getUrl(['',] string KEY, string VALUE [,string KEY, string VALUE ...])
URL을 생성합니다.
XE는 현재 요청 URL에서 주어진 파라미터의 값을 변경한 후 새로운 URL을 반환합니다. 만약 첫 번째 파라미터가 ''라면 XE는 주어진 파라미터의 값만 사용해서 새로운 URL을 생성합니다.
// domain : www.example.com
// xe install path : /xe
// request url : www.example.com/xe/index.php?module=sample&act=dispSampleAct
$reset_url = getUrl('', 'module', 'reset');
print_r($reset_url);
// result : /xe/index.php?module=reset
$update_url = getUrl('module', 'update');
print_r($update_url);
// result : /xe/index.php?module=update&act=dispSampleAct
- string getFullUrl(['',] string KEY, string VALUE [,string KEY, string VALUE ...])
http://로 시작하는 URL을 생성합니다.
// domain : www.example.com
// xe install path : /xe
// request url : www.example.com/xe/index.php?module=sample&act=dispSampleAct
$reset_url = getFullUrl('', 'module', 'reset', 'mid', 'samplemid');
print_r($reset_url);
// result : http://www.example.com/xe/index.php?module=reset&mid=samplemid
- string getNotEncodedFullUrl(['',] string KEY, string VALUE [,string KEY, string VALUE ...])
인코딩되지 않은 URL을 생성합니다. getFullUrl()과 같은 기능을 합니다.
// domain : www.example.com
// xe install path : /xe
// request url : www.example.com/xe/index.php?module=sample&act=dispSampleAct
$reset_url = getNotEncodedFullUrl('', 'module', 'reset', 'mid', 'samplemid');
print_r($reset_url);
// result : http://www.example.com/xe/index.php?module=reset&mid=samplemid
- string getAutoEncodedUrl([‘’,], string KEY, string VALUE [,string KEY, string VALUE …])
이미 인코딩되었으면 중복으로 인코딩되지 않게 URL을 생성합니다.
// domain : www.example.com
// xe install path : /xe
// request url : www.example.com/xe/index.php?module=sample&act=dispSampleAct
$reset_url = getAutoEncodedUrl('', 'name', '<script>', ‘title’, ‘<title’);
print_r($reset_url);
// result : http://www.example.com/xe/index.php?name=<script&rt;&title=<title
- string getSiteUrl(string DOMAIN, ['',] string KEY, string VALUE [,string KEY, string VALUE ...])
가상 사이트 URL을 생성합니다. 첫 번째 매개변수는 도메인이나 vid를 사용합니다.
// domain : www.example.com
// xe install path : /xe
// request url : www.example.com/xe/index.php?module=sample&act=dispSampleAct
$reset_url = getSiteUrl('site_id', '', 'module', 'reset');
print_r($reset_url);
// result : http://www.example.com/xe/index.php?module=reset&vid=site_id
- string getNotEncodedSiteUrl(string DOMAIN, ['',] string KEY, string VALUE[,string KEY, string VALUE...])
인코딩되지 않은 URL을 생성합니다. getSiteUrl()과 같은 기능을 합니다.
- string getFullSiteUrl(string DOMAIN, ['',] string KEY, string VALUE [,string KEY, string VALUE ...])
가상 사이트에 대해 http://로 시작하는 URL을 생성합니다.
- int ztime(string STR)
YYYYMMDDHHIISS 형식의 시간값을 유닉스 시간으로 변경합니다.
- string getTimeGap(string DATE, string FORMAT)
YYYYMMDDHHIISS 형식의 시간값을 현재 시간과의 차이(분/시)로 보여줍니다. 시간 차이가 하루 이상이면 FORMAT에 설정한 형식으로 보여줍니다.
- string getMonthName(int MONTH, bool SHORT)
월 이름을 표시합니다.
print_r(getMonthName(3, true));
// result : Mar
print_r(getMonthName(10, false));
// result : October
- string zdate(string STR, string FORMAT, bool CONVERSION)
YYYYMMDDHHIISS 형식의 시간값을 원하는 시간 형식으로 변경합니다.
print_r(zdate('19830310123644', 'Y-m-d H:i:s'));
// result : 1983-03-10 12:36:44
- string cut_str(string STRING, int CUT_SIZE, string TAIL)
문자열을 특정 크기로 자르고 문자열 뒤에 꼬리말(tail)을 추가합니다.
print_r(cut_str('All roads lead to XE', 3, '...'));
// result : All…
- string removeHackTag(string CONTENT)
해킹 시도로 의심되는 코드를 삭제합니다.
- bool isCrawler(string AGENT)
로그인 사용자 에이전트와 IP를 검사해서 크롤러인지 확인합니다.