XE의 일반 함수들은 XE_ROOT/config/func.inc.php 파일에 정의 되어 있습니다.
- debugPrint(mixed OBJECT)
- instance getController(string MODULE_NAME)
- instance getAdminController(string MODULE_NAME)
- instance getView(string MODULE_NAME)
- instance getAdminView(string MODULE_NAME)
- instance getModel(string MODULE_NAME)
- instrance getAdminModel(string MODULE_NAME)
- instance getAPI(string MODULE_NAME)
- instance getWAP(string MODULE_NAME)
- instance getClass(string MODULE_NAME)
- Object executeQuery(string QUERY_ID, stdClass PARAM)
- Object executeQueryArray(string QUERY_ID, stdClass PARAM)
- int getNextSequence()
- string getUrl(['',] string KEY, string VALUE [,string KEY, string VALUE ...])
- string getFullUrl(['',] string KEY, string VALUE [,string KEY, string VALUE ...])
- string getNotEncodedFullUrl(['',] string KEY, string VALUE [,string KEY, string VALUE ...])
- string getSiteUrl(string DOMAIN, ['',] string KEY, string VALUE [,string KEY, string VALUE ...])
- string getNotEncodedSiteUrl(string DOMAIN, ['',] string KEY, string VALUE[,string KEY, string VALUE...])
- string getFullSiteUrl(string DOMAIN, ['',] string KEY, string VALUE [,string KEY, string VALUE ...])
- int ztime(string STR)
- string getTimeGap(string DATE, string FORMAT)
- string getMonthName(int MONTH, bool SHORT)
- string zdate(string STR, string FORMAT, bool CONVERSION)
- string cut_str(string STRING, int CUT_SIZE, string TAIL)
- string removeHackTag(string CONTENT)
- bool isCrawler(string AGENT)
debugPrint(mixed OBJECT)
디버깅을 하기 위한 함수 입니다.
XE_ROOT/config/config.inc.php 파일에 __DEBUG__ 값이 1이상으로 정의되어 있어야 합니다.
__DEBUG_OUTPUT__ 값에 따라 결과값을 받을 방법을 선택할 수 있습니다.
* 0 : files/_debug_message.php 에 연결하여 출력
* 1 : HTML 최하단에 주석으로 출력 (Response Method가 HTML 일 때)
* 2 : Firebug 콘솔에 출력 (PHP >= 5.2.0. Firebug/FirePHP 플러그인 필요)
instance getController(string MODULE_NAME)
모듈의 Controller 인스턴스를 가져오기 위한 함수입니다.
// document.controller.class 인스턴스를 갖고 오고 싶다면
$oDocumentController = &getController('document');
instance getAdminController(string MODULE_NAME)
모듈의 Admin Controller 인스턴스를 가져오기 위한 함수입니다.
// documentAdminController 인스턴스를 갖고 오고 싶다면
$oDocumentAdminController = &getAdminController('document');
instance getView(string MODULE_NAME)
모듈의 View 인스턴스를 가져오기 위한 함수입니다.
// rssView 인스턴스를 갖고 오고 싶다면
$oRssView = &getView('rss');
instance getAdminView(string MODULE_NAME)
모듈의 Admin View 인스턴스를 가져오기 위한 함수입니다.
// adminAdminView 인스턴스를 갖고 오고 싶다면
$oAdminAdminView = &getAdminView('admin');
instance getModel(string MODULE_NAME)
모듈의 Model 인스턴스를 가져오기 위한 함수입니다.
// documentModel 인스턴스를 갖고 오고 싶다면
$oDocumentModel = &getModel('document');
instrance getAdminModel(string MODULE_NAME)
모듈의 Admin Model 인스턴스를 가져오기 위한 함수입니다.
// documentAdminModel 인스턴스를 갖고 오고 싶다면
$oDocumentAdminModel = &getAdminModel('document');
instance getAPI(string MODULE_NAME)
모듈의 API 인스턴스를 가져오기 위한 함수입니다.
// boardAPI 인스턴스를 갖고 오고 싶다면
$oBoardAPI = &getAPI('board');
instance getWAP(string MODULE_NAME)
모듈의 WAP 인스턴스를 가져오기 위한 함수입니다.
// boardWAP 인스턴스를 갖고 오고 싶다면
$oBoardWAP = &getWAP('board');
instance getClass(string MODULE_NAME)
모듈의 Class 인스턴스를 가져오기 위한 함수입니다.
// documentClass 인스턴스를 갖고 오고 싶다면
$oDocumentClass = &getClass('document');
Object executeQuery(string QUERY_ID, stdClass PARAM)
XML Query를 실행하기 위한 함수입니다. 결과는 Object class의 객체로 return 됩니다.
쿼리 실패는 Object::toBool()이 false일 경우이고 true라면 쿼리는 정상적으로 실행이 된 것을 의미합니다.
select문의 결과 데이터는 Object::data 변수에 담겨져 return 됩니다.
Object executeQueryArray(string QUERY_ID, stdClass PARAM)
executeQuery()와 기능이 같으나 select 시 Object::data 변수에 결과 row가 1개라도 array로 반환됩니다.
int getNextSequence()
다음 Sequence 번호를 가져오기 위한 함수 입니다.
XE 에서는 내부적으로 하나의 Sequence 를 쓰는데요 member_srl, module_srl, document_srl 등 모든 키는 다 이 함수로 받아 설정됩니다. document_srl이 +1씩 순차적으로 늘어나지 않지만 이점이 많이 XE에서는 이러한 방법으로 Sequence를 쓰고 있습니다.
string getUrl(['',] string KEY, string VALUE [,string KEY, string VALUE ...])
Url을 만드는 함수 입니다.
현재 요청된 RequestURI에 주어진 인자의 값으로 변형하여 url을 리턴을 하고 첫 인자값이 '' 이면 RequestUri에다가 추가된 args_list로 url을 만듭니다.
string getFullUrl(['',] string KEY, string VALUE [,string KEY, string VALUE ...])
http:// 로 시작하는 Url을 만드는 함수입니다.
string getNotEncodedFullUrl(['',] string KEY, string VALUE [,string KEY, string VALUE ...])
encode 되지 않은 Url을 만드는 함수입니다.
getFullUrl()와 기능이 같습니다.
string getSiteUrl(string DOMAIN, ['',] string KEY, string VALUE [,string KEY, string VALUE ...])
가상사이트를 위한 Url을 만드는 함수입니다. 첫 인자 DOMAIN에는 도메인 또는 vid를 받습니다.
string getNotEncodedSiteUrl(string DOMAIN, ['',] string KEY, string VALUE[,string KEY, string VALUE...])
encode 되지 않은 URL을 만드는 함수입니다.
getSiteUrl()와 기능이 같습니다.
string getFullSiteUrl(string DOMAIN, ['',] string KEY, string VALUE [,string KEY, string VALUE ...])
가상사이트를 위한 http:// 로 시작하는 Url을 만드는 함수입니다.
int ztime(string STR)
YYYYMMDDHHIISS 형식의 시간값을 unix time으로 변경하는 함수입니다.
string getTimeGap(string DATE, string FORMAT)
YmdHis의 시간 형식을 지금으로 부터 몇분/몇시간전인지를 문자열로 출력하는 함수입니다.
string getMonthName(int MONTH, bool SHORT)
월 이름을 출력하는 함수입니다.
예)
1월 → January
7월 → July
string zdate(string STR, string FORMAT, bool CONVERSION)
YYYYMMDDHHIISS 형식의 시간값을 원하는 시간 포맷으로 만들어 주는 함수입니다.
string cut_str(string STRING, int CUT_SIZE, string TAIL)
문자열을 일정한 길이에 맞게 잘라서 뒤에 꼬리를 붙여주는 함수입니다.
string removeHackTag(string CONTENT)
해킹 시도로 의심될만한 코드들을 걸러주는 함수입니다.
bool isCrawler(string AGENT)
접속자의 User Agent와 IP를 검사하여 로봇 여부를 확인하는 함수입니다.