func.inc.php 파일 참조

편의 목적으로 만든 함수라이브러리 파일 더 자세히 ...

이 파일의 소스 코드 페이지로 가기

함수

getModule ($module_name, $type= 'view', $kind= '')
 ModuleHandler::getModuleObject($module_name, $type)을 쓰기 쉽게 함수로 선언.
getController ($module_name)
 module의 controller 객체 생성용
getAdminController ($module_name)
 module의 admin controller 객체 생성용
getView ($module_name)
 module의 view 객체 생성용
getAdminView ($module_name)
 module의 admin view 객체 생성용
getModel ($module_name)
 module의 model 객체 생성용
getAdminModel ($module_name)
 module의 admin model 객체 생성용
getAPI ($module_name)
 module의 api 객체 생성용
getWAP ($module_name)
 module의 wap 객체 생성용
getClass ($module_name)
 module의 상위 class 객체 생성용
 executeQuery ($query_id, $args=null)
 DB::executeQuery() 의 alias.
 executeQueryArray ($query_id, $args=null)
 DB::executeQuery() 의 결과값을 무조건 배열로 처리하도록 하는 함수.
 getNextSequence ()
 DB::getNextSequence() 의 alias.
 getUrl ()
 Context::getUrl()를 쓰기 쉽게 함수로 선언.
 getNotEncodedUrl ()
 getFullUrl ()
 getUrl()의 값에 request uri를 추가하여 reutrn full url을 얻기 위함
 getNotEncodedFullUrl ()
 getSiteUrl ()
 Context::getUrl()를 쓰기 쉽게 함수로 선언.
 getNotEncodedSiteUrl ()
 getFullSiteUrl ()
 getSiteUrl()의 값에 request uri를 추가하여 reutrn full url을 얻기 위함
 isSiteID ($domain)
 가상사이트의 Domain이 url형식인지 site id인지 return
 cut_str ($string, $cut_size=0, $tail= '...')
 주어진 문자를 주어진 크기로 자르고 잘라졌을 경우 주어진 꼬리를 담
 zgap ()
 ztime ($str)
 YYYYMMDDHHIISS 형식의 시간값을 unix time으로 변경.
 getTimeGap ($date, $format= 'Y.m.d')
 YmdHis의 시간 형식을 지금으로 부터 몇분/몇시간전, 1일 이상 차이나면 format string return.
 getMonthName ($month, $short=true)
 월이름을 return
 zdate ($str, $format= 'Y-m-d H:i:s', $conversion=true)
 YYYYMMDDHHIISS 형식의 시간값을 원하는 시간 포맷으로 변형.
 debugPrint ($debug_output=null, $display_option=true)
 prints debug messages
 getMicroTime ()
 microtime() return
 delObjectVars ($target_obj, $del_obj)
 첫번째 인자로 오는 object var에서 2번째 object의 var들을 제거
 handleError ($errno, $errstr, $file, $line)
 php5 이상에서 error_handing을 debugPrint로 변경
 getNumberingPath ($no, $size=3)
 주어진 숫자를 주어진 크기로 recursive하게 잘라줌
 url_decode ($str)
 한글이 들어간 url의 decode
 removeHackTag ($content)
 해킹 시도로 의심되는 코드들을 미리 차단
 removeJSEvent ($matches)
 removeSrcHack ($matches)
 _isHackedSrc ($src)
 fixQuotation ($matches)
 attribute의 value를 로 둘러싸도록 처리하는 함수
if(!function_exists('hexrgb')) mysql_pre4_hash_password ($password)
 mysql old_password 의 php 구현 함수 제로보드4나 기타 mysql4.1 이전의 old_password()함수를 쓴 데이터의 사용을 위해서 mysql의 password.c 소스 참조해서 구현함
 getScriptPath ()
 utf8RawUrlDecode ($source)
 _code2utf ($num)
 json_encode2 ($data)

변수

if(version_compare(phpversion(), '5.0')
< 0) if(!function_exists('iconv')) 
$time_zone
 php5에 대비하여 clone 정의

상세한 설명

편의 목적으로 만든 함수라이브러리 파일

작성자:
zero (zero@nzeo.com)

func.inc.php 파일에서 정의되었습니다.


함수 문서화

_code2utf ( num  ) 

func.inc.php 파일의 797 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : utf8RawUrlDecode().

00797                             {
00798         if($num<128)return chr($num);
00799         if($num<2048)return chr(($num>>6)+192).chr(($num&63)+128);
00800         if($num<65536)return chr(($num>>12)+224).chr((($num>>6)&63)+128).chr(($num&63)+128);
00801         if($num<2097152)return chr(($num>>18)+240).chr((($num>>12)&63)+128).chr((($num>>6)&63)+128) .chr(($num&63)+128);
00802         return '';
00803     }

_isHackedSrc ( src  ) 

func.inc.php 파일의 683 번째 라인에서 정의되었습니다.

00683                                 {
00684         if(!$src) return false;
00685         if($src) {
00686             $url_info = parse_url($src);
00687             $query = $url_info['query'];
00688             $queries = explode('&', $query);
00689             $cnt = count($queries);
00690             for($i=0;$i<$cnt;$i++) {
00691                 $tmp_str = strtolower(trim($queries[$i]));
00692                 $pos = strpos($tmp_str,'=');
00693                 if($pos === false) continue;
00694                 $key = strtolower(trim(substr($tmp_str, 0, $pos)));
00695                 $val = strtolower(trim(substr($tmp_str,$pos+1)));
00696                 if( ($key=='module'&&$val=='admin') || ($key=='act'&&preg_match('/admin/i',$val)) ) return true;
00697             }
00698         }
00699         return false;
00700     }

cut_str ( string,
cut_size = 0,
tail = '...' 
)

주어진 문자를 주어진 크기로 자르고 잘라졌을 경우 주어진 꼬리를 담

매개변수:
string 자를 원 문자열
cut_size 주어진 원 문자열을 자를 크기
tail 잘라졌을 경우 문자열의 제일 뒤에 붙을 꼬리
반환값:
string

func.inc.php 파일의 331 번째 라인에서 정의되었습니다.

다음을 참조함 : $output.

다음에 의해서 참조됨 : documentItem::getContentText(), commentItem::getContentText(), documentItem::getSummary(), commentItem::getSummary(), contentItem::getTitle(), documentItem::getTitleText(), ttimport::importModule(), documentController::insertDocument(), documentItem::notify(), commentItem::notify(), memberController::procMemberSaveDocument(), documentController::updateDocument().

00331                                                         {
00332         if($cut_size<1 || !$string) return $string;
00333 
00334         $chars = Array(12, 4, 3, 5, 7, 7, 11, 8, 4, 5, 5, 6, 6, 4, 6, 4, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 4, 4, 8, 6, 8, 6, 10, 8, 8, 9, 8, 8, 7, 9, 8, 3, 6, 7, 7, 11, 8, 9, 8, 9, 8, 8, 7, 8, 8, 10, 8, 8, 8, 6, 11, 6, 6, 6, 4, 7, 7, 7, 7, 7, 3, 7, 7, 3, 3, 6, 3, 9, 7, 7, 7, 7, 4, 7, 3, 7, 6, 10, 6, 6, 7, 6, 6, 6, 9);
00335         $max_width = $cut_size*$chars[0]/2;
00336         $char_width = 0;
00337 
00338         $string_length = strlen($string);
00339         $char_count = 0;
00340 
00341         $idx = 0;
00342         while($idx < $string_length && $char_count < $cut_size && $char_width <= $max_width) {
00343             $c = ord(substr($string, $idx,1));
00344             $char_count++;
00345             if($c<128) {
00346                 $char_width += (int)$chars[$c-32];
00347                 $idx++;
00348             }
00349             else if (191<$c && $c < 224) {
00350                       $char_width += $chars[4];
00351                       $idx += 2;
00352                 }
00353             else {
00354                 $char_width += $chars[0];
00355                 $idx += 3;
00356             }
00357         }
00358         $output = substr($string,0,$idx);
00359         if(strlen($output)<$string_length) $output .= $tail;
00360         return $output;
00361     }

debugPrint ( debug_output = null,
display_option = true 
)

prints debug messages

매개변수:
debug_output target object to be printed
display_line boolean flag whether to print seperator (default:true)
반환값:
none

./files/_debug_message.php 파일에 $buff 내용을 출력한다. tail -f ./files/_debug_message.php 하여 계속 살펴 볼 수 있다

func.inc.php 파일의 491 번째 라인에서 정의되었습니다.

다음을 참조함 : FileHandler::filesize(), FirePHP::getInstance(), null.

다음에 의해서 참조됨 : handleError().

00491                                                                       {
00492         if(!(__DEBUG__ & 1)) return;
00493 
00494         static $firephp;
00495         $bt = debug_backtrace();
00496         if(is_array($bt)) $first = array_shift($bt);
00497         $file_name = array_pop(explode(DIRECTORY_SEPARATOR, $first['file']));
00498         $line_num = $first['line'];
00499 
00500         if(__DEBUG_OUTPUT__ == 2 && version_compare(PHP_VERSION, '6.0.0') === -1) {
00501             if(!isset($firephp)) $firephp = FirePHP::getInstance(true);
00502             if(function_exists("memory_get_usage"))
00503             {
00504                 $label = sprintf('[%s:%d] (m:%s)', $file_name, $line_num, FileHandler::filesize(memory_get_usage()));
00505             }
00506             else
00507             {
00508                 $label = sprintf('[%s:%d] ', $file_name, $line_num);
00509             }
00510 
00511             // FirePHP 옵션 체크
00512             if($display_option === 'TABLE') $label = $display_option;
00513 
00514             // __DEBUG_PROTECT__ 옵션으로 지정된 IP와 접근 IP가 동일한지 체크
00515             if(__DEBUG_PROTECT__ === 1 && __DEBUG_PROTECT_IP__ != $_SERVER['REMOTE_ADDR']) {
00516                 $debug_output = 'The IP address is not allowed. Change the value of __DEBUG_PROTECT_IP__ into your IP address in config/config.user.inc.php or config/config.inc.php';
00517                 $label = null;
00518             }
00519 
00520             $firephp->fb($debug_output, $label);
00521 
00522         } else {
00523             $debug_file = _XE_PATH_.'files/_debug_message.php';
00524             if(function_exists("memory_get_usage"))
00525             {
00526                 $debug_output = sprintf("[%s %s:%d] - mem(%s)\n%s\n", date('Y-m-d H:i:s'), $file_name, $line_num, FileHandler::filesize(memory_get_usage()), print_r($debug_output, true));
00527             }
00528             else
00529             {
00530                 $debug_output = sprintf("[%s %s:%d]\n%s\n", date('Y-m-d H:i:s'), $file_name, $line_num, print_r($debug_output, true));
00531             }
00532 
00533             if($display_option === true) $debug_output = str_repeat('=', 40)."\n".$debug_output.str_repeat('-', 40);
00534             $debug_output = "\n<?php\n/*".$debug_output."*/\n?>\n";
00535 
00536             if(@!$fp = fopen($debug_file, 'a')) return;
00537             fwrite($fp, $debug_output);
00538             fclose($fp);
00539         }
00540     }

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

delObjectVars ( target_obj,
del_obj 
)

첫번째 인자로 오는 object var에서 2번째 object의 var들을 제거

매개변수:
target_obj 원 object
del_obj 원 object의 vars에서 del_obj의 vars를 제거한다
반환값:
object

func.inc.php 파일의 558 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : moduleController::arrangeModuleInfo(), memberAdminController::procMemberAdminInsert(), memberController::procMemberInsert(), memberController::procMemberModifyInfo().

00558                                                   {
00559         if(!is_object($target_obj)) return;
00560         if(!is_object($del_obj)) return;
00561 
00562         $target_vars = get_object_vars($target_obj);
00563         $del_vars = get_object_vars($del_obj);
00564 
00565         $target = array_keys($target_vars);
00566         $del = array_keys($del_vars);
00567         if(!count($target)||!count($del)) return $target_obj;
00568 
00569         $return_obj = NULL;
00570 
00571         $target_count = count($target);
00572         for($i = 0; $i < $target_count; $i++) {
00573             $target_key = $target[$i];
00574             if(!in_array($target_key, $del)) $return_obj->{$target_key} = $target_obj->{$target_key};
00575         }
00576 
00577         return $return_obj;
00578     }

executeQuery ( query_id,
args = null 
)

DB::executeQuery() 의 alias.

매개변수:
query_id 쿼리 ID ( 모듈명.쿼리XML파일 )
args object 변수로 선언된 인자값
반환값:
처리결과

func.inc.php 파일의 174 번째 라인에서 정의되었습니다.

다음을 참조함 : DB::getInstance().

다음에 의해서 참조됨 : documentItem::_loadFromDB(), commentItem::_loadFromDB(), memberController::addMemberToGroup(), memberAdminController::changeGroup(), moduleController::clearDefaultModule(), documentAdminController::copyDocumentModule(), commentController::declaredComment(), documentController::declaredDocument(), moduleController::deleteActionForward(), moduleController::deleteAdminId(), commentController::deleteComment(), commentController::deleteComments(), memberAdminController::deleteDeniedID(), documentController::deleteDocument(), documentController::deleteDocumentAliasByDocument(), documentController::deleteDocumentAliasByModule(), documentController::deleteDocumentExtraKeys(), documentController::deleteDocumentExtraVars(), documentController::deleteDocumentHistory(), fileController::deleteFile(), fileController::deleteFiles(), memberAdminController::deleteGroup(), spamfilterAdminController::deleteIP(), memberAdminController::deleteJoinForm(), layoutAdminController::deleteLayout(), memberController::deleteMember(), menuAdminController::deleteMenu(), moduleController::deleteModule(), commentAdminController::deleteModuleComments(), documentAdminController::deleteModuleDocument(), moduleController::deleteModuleExtraVars(), moduleController::deleteModuleFileBox(), fileAdminController::deleteModuleFiles(), moduleController::deleteModuleGrants(), moduleController::deleteModuleSkinVars(), tagAdminController::deleteModuleTags(), trackbackAdminController::deleteModuleTrackbacks(), editorController::deleteSavedDoc(), counterController::deleteSiteCounterLogs(), trackbackController::deleteTrackback(), trackbackController::deleteTrackbacks(), moduleController::deleteTrigger(), spamfilterAdminController::deleteWord(), sessionController::destroy(), memberController::destroySessionInfo(), adminAdminView::dispAdminConfig(), adminAdminView::dispAdminIndex(), commentAdminView::dispCommentAdminDeclared(), documentAdminView::dispDocumentAdminDeclared(), fileAdminView::dispFileAdminList(), memberView::dispMemberScrappedDocument(), moduleView::dispModuleSelectList(), opageAdminView::dispOpageAdminContent(), pageAdminView::dispPageAdminContent(), pollAdminView::dispPollAdminResult(), addonAdminController::doActivate(), memberController::doAutologin(), addonAdminController::doDeactivate(), moduleAdminController::doDeleteModuleCategory(), addonAdminController::doInsert(), memberController::doLogin(), editorController::doSaveDoc(), addonController::doSetup(), moduleAdminController::doUpdateModuleCategory(), commentModel::fixCommentList(), sessionController::gc(), moduleModel::getActionForward(), addonAdminModel::getAddonInfoXml(), memberModel::getAdminGroup(), documentModel::getCategory(), documentModel::getCategoryChlidCount(), documentModel::getCategoryDocumentCount(), commentModel::getChildCommentCount(), commentModel::getCommentAllCount(), commentModel::getCommentCount(), commentModel::getComments(), editorModel::getComponent(), documentModel::getDailyArchivedList(), memberModel::getDefaultGroup(), moduleModel::getDefaultMid(), memberModel::getDeniedIDList(), spamfilterModel::getDeniedIPList(), spamfilterModel::getDeniedWordList(), documentModel::getDocumentCount(), documentModel::getDocumentPage(), documentModel::getDocuments(), documentModel::getDocumentSrlByAlias(), documentAdminModel::getDocumentTrash(), fileModel::getFile(), fileAdminModel::getFileList(), fileModel::getFiles(), fileModel::getFilesCount(), communicationModel::getFriendGroupInfo(), communicationModel::getFriendGroups(), communicationModel::getFriends(), moduleModel::getGrant(), memberModel::getGroup(), memberModel::getGroups(), documentModel::getHistory(), counterModel::getHourlyStatus(), addonAdminModel::getInsertedAddons(), memberModel::getJoinForm(), memberModel::getJoinFormList(), layoutModel::getLayout(), layoutModel::getLayoutList(), spamfilterModel::getLogCount(), memberModel::getMemberGroups(), memberModel::getMemberInfoByMemberSrl(), memberModel::getMemberInfoByUserID(), pointModel::getMemberList(), memberAdminModel::getMemberList(), memberModel::getMemberOpenIDByMemberSrl(), memberModel::getMemberSrlByEmailAddress(), memberModel::getMemberSrlByNickName(), memberModel::getMemberSrlByOpenID(), memberModel::getMemberSrlByUserID(), menuAdminModel::getMenu(), menuAdminModel::getMenuItemInfo(), menuAdminModel::getMenuList(), menuAdminModel::getMenus(), communicationModel::getMessages(), moduleModel::getMidList(), moduleModel::getModuleCategories(), moduleModel::getModuleCategory(), moduleModel::getModuleConfig(), moduleModel::getModuleCount(), moduleModel::getModuleFileBox(), moduleModel::getModuleFileBoxList(), moduleModel::getModuleInfoByDocumentSrl(), moduleModel::getModuleInfoByMid(), moduleModel::getModuleInfoByModuleSrl(), moduleModel::getModulePartConfig(), moduleModel::getModuleSrlByMid(), documentModel::getMonthlyArchivedList(), commentModel::getNewestCommentList(), communicationModel::getNewMessage(), pointModel::getPoint(), pollModel::getPollHtml(), pollAdminModel::getPollList(), pollModel::getPollResultHtml(), trackbackModel::getRegistedTrackback(), editorModel::getSavedDoc(), communicationModel::getSelectedMessage(), moduleModel::getSiteInfo(), moduleModel::getSiteInfoByDomain(), counterModel::getStatus(), trackbackAdminModel::getTotalTrackbackList(), trackbackModel::getTrackback(), trackbackModel::getTrackbackAllCount(), trackbackModel::getTrackbackCount(), trackbackModel::getTrackbackCountByIPAddress(), trackbackModel::getTrackbackList(), moduleModel::getTrigger(), ttimport::importAttaches(), importerAdminController::importAttaches(), importerAdminController::importComments(), importerAdminController::importMember(), importerAdminController::importMessage(), ttimport::importModule(), importerAdminController::importModule(), importerAdminController::importTrackbacks(), moduleController::insertActionForward(), moduleController::insertAdminId(), documentController::insertAlias(), documentController::insertCategory(), ttimport::insertComment(), commentController::insertComment(), editorAdminController::insertComponent(), memberAdminController::insertDeniedID(), documentController::insertDocument(), documentController::insertDocumentExtraKey(), documentController::insertDocumentExtraVar(), fileController::insertFile(), memberAdminController::insertGroup(), spamfilterController::insertIP(), layoutAdminController::insertLayout(), spamfilterController::insertLog(), counterController::insertLog(), memberController::insertMember(), moduleController::insertModule(), moduleController::insertModuleConfig(), moduleController::insertModuleExtraVars(), moduleController::insertModuleFileBox(), moduleController::insertModuleGrants(), moduleController::insertModulePartConfig(), moduleController::insertModuleSkinVars(), counterController::insertPageView(), moduleController::insertSite(), moduleController::insertSiteAdmin(), counterController::insertTodayStatus(), counterController::insertTotalStatus(), trackbackController::insertTrackback(), moduleController::insertTrigger(), counterController::insertUniqueVisitor(), spamfilterAdminController::insertWord(), addonAdminModel::isActivatedAddon(), communicationModel::isAddedFriend(), memberModel::isDeniedID(), spamfilterModel::isDeniedWord(), pointModel::isExistsPoint(), communicationModel::isFriend(), moduleModel::isIDExists(), counterModel::isInsertedTodayStatus(), counterModel::isLogged(), pollModel::isPolled(), moduleModel::isSiteAdmin(), moduleController::lock(), editorController::makeCache(), menuAdminController::makeXmlFile(), module::moduleInstall(), member::moduleInstall(), module::moduleUpdate(), document::moduleUpdate(), documentAdminController::moveDocumentModule(), documentController::moveDocumentToTrash(), fileController::moveFile(), memberAdminController::moveJoinFormDown(), memberAdminController::moveJoinFormUp(), menuAdminController::moveMenuItem(), commentAdminController::procCommentAdminCancelDeclare(), communicationController::procCommunicationAddFriend(), communicationController::procCommunicationAddFriendGroup(), communicationController::procCommunicationDeleteFriend(), communicationController::procCommunicationDeleteFriendGroup(), communicationController::procCommunicationDeleteMessage(), communicationController::procCommunicationDeleteMessages(), communicationController::procCommunicationMoveFriend(), communicationController::procCommunicationRenameFriendGroup(), communicationController::procCommunicationStoreMessage(), communicationController::procCommunicationUpdateAllowMessage(), documentAdminController::procDocumentAdminCancelDeclare(), documentAdminController::procDocumentAdminDeleteAlias(), documentAdminController::procDocumentAdminInsertAlias(), documentAdminController::procDocumentAdminInsertExtraVar(), documentAdminController::procDocumentAdminMoveExtraVar(), editorAdminController::procEditorAdminDisableComponent(), editorAdminController::procEditorAdminEnableComponent(), editorAdminController::procEditorAdminMoveListOrder(), editorAdminController::procEditorAdminSetupComponent(), fileController::procFileDownload(), importerAdminController::procImporterAdminSync(), pollController::procInsert(), layoutAdminController::procLayoutAdminUpdate(), memberAdminController::procMemberAdminInsertJoinForm(), memberAdminController::procMemberAdminUpdateMembersGroup(), memberController::procMemberAuthAccount(), memberController::procMemberDeleteOpenIDFromMember(), memberController::procMemberDeleteScrap(), memberController::procMemberFindAccount(), memberController::procMemberOpenIDValidate(), memberController::procMemberResendAuthMail(), memberController::procMemberSaveDocument(), memberController::procMemberScrapDocument(), memberController::procMemberUpdateAuthMail(), memberController::procMemberValidateAddOpenIDToMember(), menuAdminController::procMenuAdminDeleteItem(), menuAdminController::procMenuAdminInsert(), menuAdminController::procMenuAdminInsertItem(), menuAdminController::procMenuAdminUpdate(), moduleAdminController::procModuleAdminDeleteLang(), moduleAdminController::procModuleAdminInsertCategory(), moduleAdminController::procModuleAdminInsertLang(), memberController::procModuleSiteLeave(), pointAdminController::procPointAdminApplyPoint(), pointAdminController::procPointAdminReCal(), pointAdminController::procPointAdminReset(), pollController::procPoll(), sessionModel::read(), addonController::removeAddonConfig(), editorController::removeEditorConfig(), memberController::replaceMemberGroup(), documentAdminController::restoreTrash(), communicationController::sendMessage(), fileController::setFilesValid(), communicationController::setMessageReaded(), pointController::setPoint(), pollController::syncPoll(), pollController::triggerDeleteCommentPoll(), pollController::triggerDeleteDocumentPoll(), tagController::triggerDeleteTag(), tagController::triggerInsertTag(), pointController::triggerUpdateReadedCount(), moduleController::unlock(), moduleController::unlockTimeoutPassed(), documentController::updateCategory(), documentController::updateCategoryCount(), documentController::updateCategoryListOrder(), commentController::updateComment(), documentController::updateCommentCount(), documentController::updateDocument(), memberAdminController::updateGroup(), layoutAdminController::updateLayout(), memberController::updateMember(), memberController::updateMemberPassword(), menuAdminController::updateMenuLayout(), moduleController::updateModule(), moduleController::updateModuleFileBox(), moduleController::updateModuleLayout(), moduleController::updateModuleMenu(), moduleController::updateModuleSite(), moduleController::updateModuleSkinVars(), documentController::updateReadedCount(), moduleController::updateSite(), documentController::updateTrackbackCount(), documentController::updateVotedCount(), commentController::updateVotedCount(), sessionController::write().

00174                                                    {
00175         $oDB = &DB::getInstance();
00176         return $oDB->executeQuery($query_id, $args);
00177     }

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

executeQueryArray ( query_id,
args = null 
)

DB::executeQuery() 의 결과값을 무조건 배열로 처리하도록 하는 함수.

매개변수:
query_id 쿼리 ID ( 모듈명.쿼리XML파일 )
args object 변수로 선언된 인자값
반환값:
처리결과

func.inc.php 파일의 185 번째 라인에서 정의되었습니다.

다음을 참조함 : $output, DB::getInstance().

다음에 의해서 참조됨 : content::_getDocumentItems(), content::_getImageItems(), content::_getTrackbackItems(), commentController::deleteComments(), fileAdminController::deleteModuleFiles(), trackbackController::deleteTrackbackSender(), adminAdminView::dispAdminIndex(), documentAdminView::dispDocumentAdminAlias(), memberAdminView::dispMemberAdminDeleteMembers(), memberAdminView::dispMemberAdminManageGroup(), moduleAdminView::dispModuleAdminLangcode(), moduleView::dispModuleSelectList(), widgetView::dispWidgetGenerateCode(), moduleModel::getAdminId(), documentModel::getAlias(), commentModel::getCommentList(), tagModel::getDocumentSrlByTag(), tagModel::getDocumentsTagList(), documentAdminModel::getDocumentTrashList(), documentModel::getExtraKeys(), moduleModel::getGrant(), documentModel::getHistories(), moduleAdminModel::getLangCode(), sessionModel::getLoggedMembers(), memberModel::getMembersGroups(), moduleAdminModel::getModuleAdminModuleList(), moduleModel::getModuleExtraVars(), moduleModel::getModulePartConfigs(), moduleModel::getModulesInfo(), moduleModel::getModulesInfoByLayout(), moduleModel::getModuleSkinVars(), trackbackModel::getNewestTrackbackList(), documentModel::getNoticeList(), moduleModel::getSiteAdmin(), memberAdminModel::getSiteMemberList(), tagModel::getTagList(), moduleModel::getTriggers(), importerAdminController::importModule(), moduleController::insertSiteAdmin(), moduleAdminController::makeCacheDefinedLangCode(), module::moduleUpdate(), content::proc(), layoutAdminController::procLayoutAdminUpdate(), memberController::procMemberResendAuthMail(), moduleAdminController::procModuleAdminInsertLang(), pointAdminController::procPointAdminReCal(), menu::recompileCache(), memberController::replaceMemberGroup(), documentModel::setToAllDocumentExtraVars(), moduleModel::syncModuleToSite(), moduleModel::syncSkinInfoToModuleInfo(), pointController::triggerBeforeDeleteDocument().

00185                                                         {
00186         $oDB = &DB::getInstance();
00187         $output = $oDB->executeQuery($query_id, $args);
00188         if(!is_array($output->data) && count($output->data) > 0){
00189             $output->data = array($output->data);
00190         }
00191         return $output;
00192     }

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

fixQuotation ( matches  ) 

attribute의 value를 로 둘러싸도록 처리하는 함수

func.inc.php 파일의 705 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : removeSrcHack(), editorController::transEditorComponent().

00705                                     {
00706         $key = $matches[1];
00707         $val = $matches[2];
00708         if(substr($val,0,1)!='"') $val = '"'.$val.'"';
00709         return sprintf('%s=%s', $key, $val);
00710     }
00711 
00712     // hexa값을 RGB로 변환
00713     if(!function_exists('hexrgb')) {
00714         function hexrgb($hexstr) {
00715           $int = hexdec($hexstr);
00716 
00717           return array('red' => 0xFF & ($int >> 0x10),
00718                        'green' => 0xFF & ($int >> 0x8),
00719                        'blue' => 0xFF & $int);
00720         }
00721 
00722     }

& getAdminController ( module_name  ) 

module의 admin controller 객체 생성용

매개변수:
module_name 모듈이름
반환값:
module admin controller instance

func.inc.php 파일의 101 번째 라인에서 정의되었습니다.

다음을 참조함 : getModule().

다음에 의해서 참조됨 : moduleController::_replaceLangCode(), layoutAdminView::dispLayoutAdminLayoutModify(), addonAdminModel::getAddonList(), point::moduleInstall(), member::moduleInstall(), editor::moduleInstall(), addon::moduleInstall(), widgetController::procWidgetCopyDocument(), point::recompileCache(), menu::recompileCache(), commentController::triggerDeleteModuleComments(), documentController::triggerDeleteModuleDocuments(), fileController::triggerDeleteModuleFiles(), tagController::triggerDeleteModuleTags(), trackbackController::triggerDeleteModuleTrackbacks().

00101                                                {
00102         return getModule($module_name, 'controller','admin');
00103     }

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

& getAdminModel ( module_name  ) 

module의 admin model 객체 생성용

매개변수:
module_name 모듈이름
반환값:
module admin model instance

func.inc.php 파일의 137 번째 라인에서 정의되었습니다.

다음을 참조함 : getModule().

다음에 의해서 참조됨 : integration_searchModel::_getFiles(), addonController::_getMidList(), addonAdminView::dispAddonAdminIndex(), addonAdminView::dispAddonAdminInfo(), addonAdminView::dispAddonAdminSetup(), adminAdminView::dispAdminIndex(), documentAdminView::dispDocumentAdminTrashList(), fileAdminView::dispFileAdminList(), layoutAdminView::dispLayoutAdminModify(), memberAdminView::dispMemberAdminList(), menuAdminView::dispMenuAdminContent(), menuAdminView::dispMenuAdminInsert(), menuAdminView::dispMenuAdminManagement(), moduleAdminView::dispModuleAdminLangcode(), opageAdminView::dispOpageAdminGrantInfo(), pageAdminView::dispPageAdminGrantInfo(), pollAdminView::dispPollAdminList(), trackbackAdminView::dispTrackbackAdminList(), menuAdminModel::getMenuItemNames(), menuAdminController::getPhpCacheCode(), integration_searchModel::getTrackbacks(), menuAdminController::getXmlTree(), addonController::makeCacheFile(), menuAdminController::moveMenuItem(), addonAdminController::procAddonAdminToggleActivate(), layoutAdminController::procLayoutAdminUpdate(), menuAdminController::procMenuAdminDeleteItem(), menuAdminController::procMenuAdminInsertItem(), menuAdminController::procMenuAdminMakeXmlFile(), smartphoneXE::smartphoneXE().

00137                                           {
00138         return getModule($module_name, 'model','admin');
00139     }

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

& getAdminView ( module_name  ) 

module의 admin view 객체 생성용

매개변수:
module_name 모듈이름
반환값:
module admin view instance

func.inc.php 파일의 119 번째 라인에서 정의되었습니다.

다음을 참조함 : getModule().

다음에 의해서 참조됨 : memberView::dispMemberOwnDocument().

00119                                          {
00120         return getModule($module_name, 'view','admin');
00121     }

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

& getAPI ( module_name  ) 

module의 api 객체 생성용

매개변수:
module_name 모듈이름
반환값:
module api class instance

func.inc.php 파일의 146 번째 라인에서 정의되었습니다.

다음을 참조함 : getModule().

00146                                    {
00147         return getModule($module_name, 'api');
00148     }

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

& getClass ( module_name  ) 

module의 상위 class 객체 생성용

매개변수:
module_name 모듈이름
반환값:
module class instance

func.inc.php 파일의 164 번째 라인에서 정의되었습니다.

다음을 참조함 : getModule().

다음에 의해서 참조됨 : installController::installDownloadedModule(), installController::installModule(), integration_searchView::IS(), adminAdminController::procAdminRecompileCacheFile().

00164                                      {
00165         return getModule($module_name, 'class');
00166     }

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

& getController ( module_name  ) 

module의 controller 객체 생성용

매개변수:
module_name 모듈이름
반환값:
module controller instance

func.inc.php 파일의 92 번째 라인에서 정의되었습니다.

다음을 참조함 : getModule().

다음에 의해서 참조됨 : Context::_getBrowserTitle(), spamfilterModel::checkLimited(), documentAdminController::copyDocumentModule(), commentController::deleteComment(), trackbackController::deleteTrackback(), layoutAdminView::dispLayoutAdminLayoutModify(), memberView::dispMemberLogout(), pageAdminView::dispPageAdminContentModify(), pageView::dispPageIndex(), documentModel::getCategoryList(), documentModel::getCategoryPhpFile(), documentModel::getCategoryXmlFile(), commentModel::getCommentMenu(), editorModel::getComponentList(), documentModel::getDocumentCategoryTplInfo(), documentModel::getDocumentMenu(), editorModel::getEditor(), opageView::getHtmlPage(), memberModel::getLoggedInfo(), memberModel::getMemberMenu(), communicationModel::getNewMessage(), editorModel::getSavedDoc(), documentItem::getTransContent(), importerAdminController::importMember(), ttimport::importModule(), importerAdminController::importModule(), installView::init(), Context::init(), memberAdminController::insertAdmin(), commentController::insertComment(), editorAdminController::insertComponent(), trackbackController::insertTrackback(), ModuleHandler::ModuleHandler(), widget::moduleInstall(), trackback::moduleInstall(), tag::moduleInstall(), spamfilter::moduleInstall(), rss::moduleInstall(), poll::moduleInstall(), point::moduleInstall(), module::moduleInstall(), member::moduleInstall(), integration_search::moduleInstall(), file::moduleInstall(), editor::moduleInstall(), document::moduleInstall(), counter::moduleInstall(), comment::moduleInstall(), widget::moduleUpdate(), trackback::moduleUpdate(), tag::moduleUpdate(), spamfilter::moduleUpdate(), rss::moduleUpdate(), poll::moduleUpdate(), point::moduleUpdate(), module::moduleUpdate(), member::moduleUpdate(), file::moduleUpdate(), editor::moduleUpdate(), document::moduleUpdate(), comment::moduleUpdate(), documentAdminController::moveDocumentModule(), documentItem::notify(), commentItem::notify(), DisplayHandler::printContent(), ModuleObject::proc(), adminAdminController::procAdminLogout(), commentAdminController::procCommentAdminDeleteChecked(), communicationAdminController::procCommunicationAdminInsertConfig(), pageAdminController::procDeleteFile(), documentAdminController::procDocumentAdminDeleteChecked(), documentAdminController::procDocumentAdminDeleteExtraVar(), documentAdminController::procDocumentAdminInsertConfig(), documentAdminController::procDocumentAdminInsertExtraVar(), editorAdminController::procEditorAdminDisableComponent(), editorAdminController::procEditorAdminEnableComponent(), editorAdminController::procEditorAdminMoveListOrder(), editorAdminController::procEditorAdminSetupComponent(), editorController::procEditorInsertModuleConfig(), editorController::procEditorLoadSavedDocument(), editorController::procEditorRemoveSavedDoc(), fileAdminController::procFileAdminDeleteChecked(), fileAdminController::procFileAdminInsertConfig(), fileAdminController::procFileAdminInsertModuleConfig(), installAdminController::procInstallAdminInstall(), installAdminController::procInstallAdminSaveTimeZone(), integration_searchAdminController::procIntegration_searchAdminInsertConfig(), krzipAdminController::procKrzipAdminInsertConfig(), memberAdminController::procMemberAdminDelete(), memberAdminController::procMemberAdminDeleteMembers(), memberAdminController::procMemberAdminGroupImageMarkUpdateOrder(), memberAdminController::procMemberAdminInsert(), memberAdminController::procMemberAdminInsertConfig(), memberController::procMemberDeleteSavedDocument(), memberController::procMemberSaveDocument(), menuAdminController::procMenuAdminInsertItem(), messageAdminController::procMessageAdminInsertConfig(), moduleAdminController::procModuleAdminInsertGrant(), moduleAdminController::procModuleAdminModuleGrantSetup(), moduleAdminController::procModuleAdminModuleSetup(), opageAdminController::procOpageAdminDelete(), opageAdminController::procOpageAdminInsert(), pageAdminController::procPageAdminDelete(), pageAdminController::procPageAdminInsert(), pageAdminController::procPageAdminInsertConfig(), pageAdminController::procPageAdminInsertContent(), pageAdminController::procPageAdminRemoveWidgetCache(), pointAdminController::procPointAdminInsertModuleConfig(), pointAdminController::procPointAdminInsertPointModuleConfig(), pointAdminController::procPointAdminReset(), pointAdminController::procPointAdminUpdatePoint(), pollAdminController::procPollAdminInsertConfig(), sessionAdminController::procSessionAdminClear(), spamfilterAdminController::procSpamfilterAdminInsertConfig(), spamfilterAdminController::procSpamfilterAdminInsertDeniedIP(), trackbackAdminController::procTrackbackAdminDeleteChecked(), trackbackAdminController::procTrackbackAdminInsertConfig(), pageAdminController::procUploadFile(), pageWap::procWAP(), widgetController::procWidgetCopyDocument(), widgetController::procWidgetDeleteDocument(), widgetController::procWidgetInsertDocument(), widgetController::procWidgetRemoveContents(), rssView::rss(), trackbackController::sendTrackback(), commentController::setCommentModuleConfig(), mobileXE::setContent(), rssAdminController::setFeedConfig(), memberController::setMemberConfig(), rssAdminController::setRssModuleConfig(), mobileXE::setTitle(), trackbackAdminController::setTrackbackModuleConfig(), LockTest::testLock(), opageTest::testReplaceSrc(), widgetController::transWidgetCode(), documentController::triggerDeleteModuleDocuments(), spamfilterController::triggerInsertTrackback(), trackbackController::triggerSendTrackback(), documentItem::updateReadedCount().

00092                                           {
00093         return getModule($module_name, 'controller');
00094     }

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

getFullSiteUrl (  ) 

getSiteUrl()의 값에 request uri를 추가하여 reutrn full url을 얻기 위함

func.inc.php 파일의 299 번째 라인에서 정의되었습니다.

다음을 참조함 : Context::getRequestUri(), Context::getUrl().

00299                               {
00300         $num_args = func_num_args();
00301         $args_list = func_get_args();
00302 
00303         $request_uri = Context::getRequestUri();
00304         if(!$num_args) return $request_uri;
00305 
00306         $domain = array_shift($args_list);
00307         $num_args = count($args_list);
00308 
00309         $url = Context::getUrl($num_args, $args_list, $domain);
00310         if(!preg_match('/^http/i',$url)){
00311             preg_match('/^(http|https):\/\/([^\/]+)\//',$request_uri,$match);
00312             return substr($match[0],0,-1).$url;
00313         }
00314         return $url;
00315     }

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

getFullUrl (  ) 

getUrl()의 값에 request uri를 추가하여 reutrn full url을 얻기 위함

func.inc.php 파일의 235 번째 라인에서 정의되었습니다.

다음을 참조함 : Context::getRequestUri(), Context::getUrl().

다음에 의해서 참조됨 : adminAdminView::dispAdminIndex(), documentItem::getPermanentUrl(), trackbackModel::getTrackbackUrl(), memberController::insertMember(), documentItem::notify(), commentItem::notify(), memberController::procMemberFindAccount(), memberController::procMemberResendAuthMail(), memberController::procMemberUpdateAuthMail(), trackbackController::sendTrackback().

00235                           {
00236         $num_args = func_num_args();
00237         $args_list = func_get_args();
00238         $request_uri = Context::getRequestUri();
00239         if(!$num_args) return $request_uri;
00240 
00241         $url = Context::getUrl($num_args, $args_list);
00242         if(!preg_match('/^http/i',$url)){
00243             preg_match('/^(http|https):\/\/([^\/]+)\//',$request_uri,$match);
00244             return substr($match[0],0,-1).$url;
00245         }
00246         return $url;
00247     }

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

getMicroTime (  ) 

microtime() return

반환값:
float

func.inc.php 파일의 547 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : DisplayHandler::_debugOutput(), TemplateHandler::compile(), widgetController::execute(), ModuleHandler::getModuleInstance(), XmlParser::parse(), DisplayHandler::printContent().

00547                             {
00548         list($time1, $time2) = explode(' ', microtime());
00549         return (float)$time1 + (float)$time2;
00550     }

& getModel ( module_name  ) 

module의 model 객체 생성용

매개변수:
module_name 모듈이름
반환값:
module model instance

func.inc.php 파일의 128 번째 라인에서 정의되었습니다.

다음을 참조함 : getModule().

다음에 의해서 참조됨 : XmlJsFilter::_compile(), content::_getCommentItems(), content::_getDocumentItems(), integration_searchModel::_getFiles(), content::_getImageItems(), content::_getTrackbackItems(), layoutAdminController::addExtension(), documentItem::allowTrackback(), memberModel::arrangeMemberInfo(), widgetController::arrangeWidgetVars(), widget::checkUpdate(), trackback::checkUpdate(), tag::checkUpdate(), spamfilter::checkUpdate(), rss::checkUpdate(), poll::checkUpdate(), point::checkUpdate(), member::checkUpdate(), file::checkUpdate(), editor::checkUpdate(), document::checkUpdate(), comment::checkUpdate(), widgetController::compileWidgetStyle(), documentAdminController::copyDocumentModule(), commentController::declaredComment(), documentController::declaredDocument(), moduleController::deleteAdminId(), commentController::deleteComment(), commentController::deleteComments(), documentController::deleteDocument(), fileController::deleteFiles(), memberAdminController::deleteGroup(), layoutAdminController::deleteLayout(), memberController::deleteMember(), moduleController::deleteModuleFileBox(), editorController::deleteSavedDoc(), trackbackController::deleteTrackback(), layoutAdminController::deleteUserLayoutTempFile(), addonAdminView::dispAddonAdminSetup(), adminAdminView::dispAdminIndex(), commentAdminView::dispCommentAdminDeclared(), commentAdminView::dispCommentAdminList(), communicationView::dispCommunicationAddFriend(), communicationView::dispCommunicationAddFriendGroup(), communicationAdminView::dispCommunicationAdminConfig(), communicationView::dispCommunicationFriend(), communicationView::dispCommunicationMessages(), communicationView::dispCommunicationNewMessage(), communicationView::dispCommunicationSendMessage(), counterAdminView::dispCounterAdminIndex(), documentAdminView::dispDocumentAdminAlias(), documentAdminView::dispDocumentAdminConfig(), documentAdminView::dispDocumentAdminDeclared(), documentAdminView::dispDocumentAdminList(), documentView::dispDocumentManageDocument(), documentView::dispDocumentPrint(), editorAdminView::dispEditorAdminIndex(), editorAdminView::dispEditorAdminSetupComponent(), editorView::dispEditorComponentInfo(), editorView::dispEditorPopup(), editorView::dispEditorSkinColorset(), fileAdminView::dispFileAdminConfig(), fileAdminView::dispFileAdminList(), importerAdminView::dispImporterAdminContent(), integration_searchAdminView::dispIntegration_searchAdminContent(), integration_searchAdminView::dispIntegration_searchAdminSkinInfo(), krzipAdminView::dispKrzipAdminConfig(), ModuleHandler::displayContent(), layoutAdminView::dispLayoutAdminContent(), layoutAdminView::dispLayoutAdminDownloadedList(), layoutAdminView::dispLayoutAdminEdit(), layoutAdminView::dispLayoutAdminInfo(), layoutAdminView::dispLayoutAdminInsert(), layoutAdminView::dispLayoutAdminLayoutImageList(), layoutAdminView::dispLayoutAdminLayoutModify(), layoutAdminView::dispLayoutAdminModify(), layoutAdminView::dispLayoutAdminPreview(), layoutView::dispLayoutInfo(), memberAdminView::dispMemberAdminConfig(), memberAdminView::dispMemberAdminDeniedIDList(), memberAdminView::dispMemberAdminGroupList(), memberAdminView::dispMemberAdminInfo(), memberAdminView::dispMemberAdminInsert(), memberAdminView::dispMemberAdminInsertJoinForm(), memberAdminView::dispMemberAdminJoinFormList(), memberAdminView::dispMemberAdminList(), memberAdminView::dispMemberAdminManageGroup(), memberView::dispMemberInfo(), memberView::dispMemberLeave(), memberView::dispMemberModifyInfo(), memberView::dispMemberModifyPassword(), memberView::dispMemberOpenIDLeave(), memberView::dispMemberOwnDocument(), memberView::dispMemberSavedDocument(), memberView::dispMemberScrappedDocument(), memberView::dispMemberSignUpForm(), menuAdminView::dispMenuAdminMidList(), messageView::dispMessage(), messageAdminView::dispMessageAdminConfig(), moduleAdminView::dispModuleAdminCategory(), moduleAdminView::dispModuleAdminCopyModule(), moduleAdminView::dispModuleAdminInfo(), moduleAdminView::dispModuleAdminList(), moduleAdminView::dispModuleAdminModuleGrantSetup(), moduleAdminView::dispModuleAdminModuleSetup(), moduleView::dispModuleFileBox(), moduleView::dispModuleSelectList(), moduleView::dispModuleSkinInfo(), opageAdminView::dispOpageAdminDelete(), opageAdminView::dispOpageAdminGrantInfo(), opageAdminView::dispOpageAdminInsert(), opageView::dispOpageIndex(), pageAdminView::dispPageAdminContentModify(), pageAdminView::dispPageAdminDelete(), pageAdminView::dispPageAdminInfo(), pageAdminView::dispPageAdminInsert(), pointAdminView::dispPointAdminConfig(), pointAdminView::dispPointAdminModuleConfig(), pointAdminView::dispPointAdminPointList(), pollAdminView::dispPollAdminConfig(), pollAdminView::dispPollAdminResult(), rssAdminView::dispRssAdminIndex(), memberView::dispSavedDocumentList(), spamfilterAdminView::dispSpamfilterAdminConfig(), spamfilterAdminView::dispSpamfilterAdminDeniedIPList(), spamfilterAdminView::dispSpamfilterAdminDeniedWordList(), trackbackAdminView::dispTrackbackAdminList(), trackbackView::dispTrackbackSend(), widgetAdminView::dispWidgetAdminAddContent(), widgetAdminView::dispWidgetAdminDownloadedList(), widgetView::dispWidgetGenerateCode(), widgetView::dispWidgetGenerateCodeInPage(), widgetView::dispWidgetInfo(), widgetView::dispWidgetSkinInfo(), widgetView::dispWidgetStyleGenerateCodeInPage(), memberController::doLogin(), memberController::doOpenIDValidate(), commentModel::getCommentConfig(), documentItem::getCommentEditor(), commentModel::getCommentList(), commentModel::getCommentMenu(), integration_searchModel::getComments(), documentItem::getComments(), communicationAdminModel::getCommunicationAdminColorset(), spamfilterModel::getConfig(), communicationModel::getConfig(), documentModel::getDailyArchivedList(), documentModel::getDocumentCategoryTplInfo(), documentModel::getDocumentConfig(), documentModel::getDocumentList(), documentModel::getDocumentMenu(), integration_searchModel::getDocuments(), documentAdminModel::getDocumentTrashList(), editorModel::getEditor(), documentItem::getEditor(), commentItem::getEditor(), editorModel::getEditorConfig(), documentItem::getExtraVars(), fileModel::getFileConfig(), fileModel::getFileList(), fileAdminModel::getFileList(), memberModel::getGroupImageMark(), krzipModel::getKrzipCodeList(), memberModel::getLoggedInfo(), memberAdminModel::getMemberAdminColorset(), memberModel::getMemberConfig(), pointModel::getMemberList(), memberModel::getMemberOpenIDByMemberSrl(), memberModel::getMemberSrlByOpenID(), menuAdminModel::getMenuAdminTplInfo(), moduleAdminModel::getModuleGrantHTML(), moduleAdminModel::getModuleSkinHTML(), documentModel::getMonthlyArchivedList(), commentModel::getNewestCommentList(), trackbackModel::getNewestTrackbackList(), opageModel::getOpage(), pollAdminModel::getPollAdminTarget(), pollModel::getPollGetColorsetList(), poll_maker::getPopupContent(), documentItem::getProfileImage(), commentItem::getProfileImage(), rssModel::getRssModuleConfig(), editorModel::getSavedDoc(), communicationModel::getSelectedMessage(), documentItem::getSignature(), commentItem::getSignature(), tagModel::getTagList(), documentItem::getThumbnail(), trackbackModel::getTrackbackModuleConfig(), documentItem::getTrackbacks(), documentItem::getTrackbackUrl(), documentItem::getUploadedFiles(), commentItem::getUploadedFiles(), widgetController::getWidgetObject(), layoutAdminController::importLayout(), importerAdminController::importMember(), ttimport::importModule(), importerAdminController::importModule(), pointAdminView::init(), pageAdminView::init(), opageAdminView::init(), ModuleHandler::init(), memberView::init(), memberAdminView::init(), integration_searchAdminView::init(), Context::init(), communicationView::init(), adminAdminView::init(), adminAdminController::init(), layoutAdminController::initLayout(), memberAdminController::insertAdmin(), moduleController::insertAdminId(), documentController::insertCategory(), commentController::insertComment(), documentController::insertDocument(), fileController::insertFile(), memberController::insertImageMark(), memberController::insertImageName(), memberController::insertMember(), moduleController::insertModule(), moduleController::insertModuleFileBox(), memberController::insertProfileImage(), moduleController::insertSite(), trackbackController::insertTrackback(), layoutAdminController::insertUserLayoutImage(), layoutAdminController::insertUserLayoutValue(), installController::installDownloadedModule(), integration_searchView::IS(), commentItem::isAccessible(), documentItem::isExtraVarsExists(), spamfilterModel::isInsertedTrackback(), editorController::makeCache(), menuAdminController::makeXmlFile(), member::member(), memberTransImageName(), member::moduleInstall(), widget::moduleUpdate(), trackback::moduleUpdate(), tag::moduleUpdate(), spamfilter::moduleUpdate(), session::moduleUpdate(), rss::moduleUpdate(), poll::moduleUpdate(), point::moduleUpdate(), module::moduleUpdate(), layout::moduleUpdate(), file::moduleUpdate(), editor::moduleUpdate(), document::moduleUpdate(), comment::moduleUpdate(), documentAdminController::moveDocumentModule(), documentController::moveDocumentToTrash(), fileController::moveFile(), memberAdminController::moveJoinFormDown(), memberAdminController::moveJoinFormUp(), commentItem::notify(), pointLevelIconTrans(), DisplayHandler::printContent(), login_info::proc(), counter_status::proc(), content::proc(), adminAdminController::procAdminRecompileCacheFile(), communicationController::procCommunicationDeleteMessage(), communicationController::procCommunicationSendMessage(), communicationController::procCommunicationStoreMessage(), counterController::procCounterExecute(), documentAdminController::procDocumentAdminMoveExtraVar(), editorController::procEditorCall(), editorController::procEditorLoadSavedDocument(), fileController::procFileDownload(), fileController::procFileUpload(), integration_searchAdminController::procIntegration_searchAdminInsertConfig(), integration_searchAdminController::procIntegration_searchAdminInsertSkin(), layoutAdminController::procLayoutAdminCodeReset(), layoutAdminController::procLayoutAdminCodeUpdate(), layoutAdminController::procLayoutAdminUpdate(), layoutAdminController::procLayoutAdminUserLayoutExport(), layoutAdminController::procLayoutAdminUserLayoutImport(), layoutAdminController::procLayoutAdminUserValueInsert(), memberAdminController::procMemberAdminGroupImageMarkUpdateOrder(), memberAdminController::procMemberAdminInsert(), memberController::procMemberCheckValue(), memberController::procMemberDeleteImageMark(), memberController::procMemberDeleteImageName(), memberController::procMemberDeleteProfileImage(), memberController::procMemberFindAccount(), memberController::procMemberInsert(), memberController::procMemberInsertImageMark(), memberController::procMemberInsertImageName(), memberController::procMemberInsertProfileImage(), memberController::procMemberLeave(), memberController::procMemberLogin(), memberController::procMemberLogout(), memberController::procMemberModifyInfo(), memberController::procMemberModifyPassword(), memberController::procMemberOpenIDLogin(), memberController::procMemberOpenIDValidate(), memberController::procMemberResendAuthMail(), memberController::procMemberSaveDocument(), memberController::procMemberScrapDocument(), memberController::procMemberUpdateAuthMail(), menuAdminController::procMenuAdminInsertItem(), ModuleHandler::procModule(), moduleAdminController::procModuleAdminInsertGrant(), moduleAdminController::procModuleAdminModuleGrantSetup(), moduleAdminController::procModuleAdminModuleSetup(), moduleAdminController::procModuleAdminUpdateSkinInfo(), memberController::procModuleSiteSignUp(), opageAdminController::procOpageAdminInsert(), pageAdminController::procPageAdminInsert(), pageAdminController::procPageAdminInsertContent(), pageAdminController::procPageAdminRemoveWidgetCache(), pointAdminController::procPointAdminInsertConfig(), pointAdminController::procPointAdminReCal(), pollController::procPoll(), pollController::procPollViewResult(), rssAdminController::procRssAdminInsertConfig(), trackbackController::procTrackbackSend(), widgetController::procWidgetCopyDocument(), widgetController::procWidgetDeleteDocument(), widgetController::procWidgetGetColorsetList(), widgetController::procWidgetInsertDocument(), widgetController::procWidgetRemoveContents(), editorController::removeCache(), layoutAdminController::removeUserLayoutImage(), rssView::rss(), documentItem::setAttribute(), ModuleObject::setModuleInfo(), pointController::setPoint(), memberController::setSessionInfo(), trackbackController::trackback(), poll_maker::transHTML(), pointController::triggerAfterLogin(), pointController::triggerBeforeDeleteDocument(), pointController::triggerBeforeDownloadFile(), ModuleHandler::triggerCall(), fileController::triggerCheckAttached(), fileController::triggerCommentCheckAttached(), pointController::triggerDeleteComment(), pointController::triggerDeleteDocument(), pointController::triggerDeleteFile(), commentView::triggerDispCommentAdditionSetup(), documentView::triggerDispDocumentAdditionSetup(), editorView::triggerDispEditorAdditionSetup(), fileView::triggerDispFileAdditionSetup(), pointView::triggerDispPointAdditionSetup(), rssView::triggerDispRssAdditionSetup(), trackbackView::triggerDispTrackbackAdditionSetup(), pointController::triggerDownloadFile(), editorController::triggerEditorComponentCompile(), spamfilterController::triggerInsertComment(), pointController::triggerInsertComment(), spamfilterController::triggerInsertDocument(), pointController::triggerInsertDocument(), pointController::triggerInsertMember(), spamfilterController::triggerInsertTrackback(), rssController::triggerRssUrlInsert(), trackbackController::triggerSendTrackback(), pointController::triggerUpdateDocument(), pointController::triggerUpdateReadedCount(), pointController::triggerUpdateVotedCount(), documentController::updateCategoryCount(), commentController::updateComment(), documentController::updateDocument(), layoutAdminController::updateLayout(), memberController::updateMember(), moduleController::updateModule(), moduleController::updateModuleFileBox(), moduleController::updateSite(), documentController::updateVotedCount(), commentController::updateVotedCount().

00128                                      {
00129         return getModule($module_name, 'model');
00130     }

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

& getModule ( module_name,
type = 'view',
kind = '' 
)

ModuleHandler::getModuleObject($module_name, $type)을 쓰기 쉽게 함수로 선언.

매개변수:
module_name 모듈이름
type disp, proc, controller, class
kind admin, null
반환값:
module instance

func.inc.php 파일의 83 번째 라인에서 정의되었습니다.

다음을 참조함 : ModuleHandler::getModuleInstance().

다음에 의해서 참조됨 : getAdminController(), getAdminModel(), getAdminView(), getAPI(), getClass(), getController(), getModel(), moduleModel::getModuleList(), getView(), getWAP(), smartphoneXE::haveSmartphoneModule(), installAdminController::procInstallAdminUpdate(), smartphoneXE::procSmartPhone(), ModuleHandler::triggerCall().

00083                                                                   {
00084         return ModuleHandler::getModuleInstance($module_name, $type, $kind);
00085     }

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

getMonthName ( month,
short = true 
)

월이름을 return

func.inc.php 파일의 421 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : zdate().

00421                                                  {
00422         $short_month = array('','Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec');
00423         $long_month = array('','January','February','March','April','May','June','July','August','September','October','November','December');
00424         return !$short?$long_month[$month]:$short_month[$month];
00425     }

getNextSequence (  ) 

DB::getNextSequence() 의 alias.

반환값:
big int

func.inc.php 파일의 198 번째 라인에서 정의되었습니다.

다음을 참조함 : DB::getInstance().

다음에 의해서 참조됨 : documentAdminController::copyDocumentModule(), documentModel::getDocumentCategoryTplInfo(), menuAdminModel::getMenuAdminTplInfo(), ttimport::importAttaches(), importerAdminController::importAttaches(), importerAdminController::importComments(), importerAdminController::importMember(), importerAdminController::importMessage(), ttimport::importModule(), importerAdminController::importModule(), importerAdminController::importTrackbacks(), documentController::insertAlias(), documentController::insertCategory(), ttimport::insertComment(), commentController::insertComment(), editorAdminController::insertComponent(), memberAdminController::insertDeniedID(), documentController::insertDocument(), fileController::insertFile(), memberController::insertMember(), moduleController::insertModule(), moduleController::insertModuleFileBox(), moduleController::insertSite(), trackbackController::insertTrackback(), documentController::moveDocumentToTrash(), menuAdminController::moveMenuItem(), communicationController::procCommunicationAddFriend(), documentAdminController::procDocumentAdminInsertAlias(), fileController::procFileIframeUpload(), fileController::procFileUpload(), pollController::procInsert(), layoutAdminController::procLayoutAdminInsert(), memberAdminController::procMemberAdminInsertJoinForm(), memberController::procMemberInsert(), menuAdminController::procMenuAdminInsert(), opageAdminController::procOpageAdminInsert(), communicationController::sendMessage(), documentController::updateCommentCount(), documentController::updateDocument().

00198                                {
00199         $oDB = &DB::getInstance();
00200         return $oDB->getNextSequence();
00201     }

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

getNotEncodedFullUrl (  ) 

func.inc.php 파일의 249 번째 라인에서 정의되었습니다.

다음을 참조함 : Context::getRequestUri(), Context::getUrl(), null.

00249                                     {
00250         $num_args = func_num_args();
00251         $args_list = func_get_args();
00252         $request_uri = Context::getRequestUri();
00253         if(!$num_args) return $request_uri;
00254 
00255         $url = Context::getUrl($num_args, $args_list);
00256         if(!preg_match('/^http/i',$url)){
00257             preg_match('/^(http|https):\/\/([^\/]+)\//',$request_uri,$match);
00258             $url = Context::getUrl($num_args, $args_list, null, false);
00259             return substr($match[0],0,-1).$url;
00260         }
00261         return $url;
00262     }

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

getNotEncodedSiteUrl (  ) 

func.inc.php 파일의 283 번째 라인에서 정의되었습니다.

다음을 참조함 : Context::getRequestUri(), Context::getUrl().

다음에 의해서 참조됨 : ModuleHandler::init().

00283                                     {
00284         $num_args = func_num_args();
00285         $args_list = func_get_args();
00286 
00287         if(!$num_args) return Context::getRequestUri();
00288 
00289         $domain = array_shift($args_list);
00290         $num_args = count($args_list);
00291 
00292         return Context::getUrl($num_args, $args_list, $domain, false);
00293     }

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

getNotEncodedUrl (  ) 

func.inc.php 파일의 222 번째 라인에서 정의되었습니다.

다음을 참조함 : Context::getRequestUri(), Context::getUrl(), null.

00222                                 {
00223         $num_args = func_num_args();
00224         $args_list = func_get_args();
00225 
00226         if(!$num_args) return Context::getRequestUri();
00227 
00228         return Context::getUrl($num_args, $args_list, null, false);
00229     }

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

getNumberingPath ( no,
size = 3 
)
getScriptPath (  ) 

현재 요청받은 스크립트 경로를 return

func.inc.php 파일의 755 번째 라인에서 정의되었습니다.

다음을 참조함 : null.

다음에 의해서 참조됨 : Context::_getUrl().

00755                              {
00756         static $url = null;
00757         if($url == null) $url = preg_replace('/\/tools\//i','/',preg_replace('/index.php$/i','',str_replace('\\','/',$_SERVER['SCRIPT_NAME'])));
00758         return $url;
00759     }

getSiteUrl (  ) 

Context::getUrl()를 쓰기 쉽게 함수로 선언.

반환값:
string

getSiteUrl()은 지정된 도메인에 대해 주어진 인자의 값으로 변형하여 url을 리턴한다
첫 인자는 도메인(http://등이 제외된)+path 여야 함.

func.inc.php 파일의 271 번째 라인에서 정의되었습니다.

다음을 참조함 : Context::getRequestUri(), Context::getUrl().

다음에 의해서 참조됨 : content::_compile(), content::_getDocumentItems(), content::_getTrackbackItems(), menuAdminController::getPhpCacheCode(), menuAdminController::getXmlTree().

00271                           {
00272         $num_args = func_num_args();
00273         $args_list = func_get_args();
00274 
00275         if(!$num_args) return Context::getRequestUri();
00276 
00277         $domain = array_shift($args_list);
00278         $num_args = count($args_list);
00279 
00280         return Context::getUrl($num_args, $args_list, $domain);
00281     }

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

getTimeGap ( date,
format = 'Y.m.d' 
)

YmdHis의 시간 형식을 지금으로 부터 몇분/몇시간전, 1일 이상 차이나면 format string return.

func.inc.php 파일의 406 번째 라인에서 정의되었습니다.

다음을 참조함 : elseif, Context::getLang(), zdate(), ztime().

00406                                                   {
00407         $gap = time() - ztime($date);
00408 
00409         $lang_time_gap = Context::getLang('time_gap');
00410         if($gap<60) $buff = sprintf($lang_time_gap['min'], (int)($gap / 60)+1);
00411         elseif($gap<60*60) $buff =  sprintf($lang_time_gap['mins'], (int)($gap / 60)+1);
00412         elseif($gap<60*60*2) $buff =  sprintf($lang_time_gap['hour'], (int)($gap / 60 /60)+1);
00413         elseif($gap<60*60*24) $buff =  sprintf($lang_time_gap['hours'], (int)($gap / 60 /60)+1);
00414         else $buff =  zdate($date, $format);
00415         return $buff;
00416     }

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

getUrl (  ) 

Context::getUrl()를 쓰기 쉽게 함수로 선언.

반환값:
string

getUrl()은 현재 요청된 RequestURI에 주어진 인자의 값으로 변형하여 url을 리턴한다
1. 인자는 (key, value)... 의 형식으로 주어져야 한다.
ex) getUrl('key1','val1', 'key2', '') : key1, key2를 val1과 '' 로 변형
2. 아무런 인자가 없으면 argument를 제외한 url을 리턴 3. 첫 인자값이 '' 이면 RequestUri에다가 추가된 args_list로 url을 만듬

func.inc.php 파일의 213 번째 라인에서 정의되었습니다.

다음을 참조함 : Context::getRequestUri(), Context::getUrl().

다음에 의해서 참조됨 : content::_getCommentItems(), smartphoneXE::_setParentUrl(), mobileXE::display(), mobileXE::displayLangSelect(), mobileXE::displayNavigationContent(), memberView::dispMemberLoginForm(), layoutModel::doActivateFaceOff(), commentModel::getCommentMenu(), documentModel::getDocumentMenu(), memberModel::getMemberMenu(), commentItem::getPermanentUrl(), ttimport::importAttaches(), importerAdminController::importAttaches(), wap::printBtn(), documentItem::printExtraImages(), moduleController::procModuleFileBoxAdd(), rssView::rss(), mobileXE::setChilds(), mobileXE::setContent(), mobileXE::setModuleInstance(), rssController::triggerRssUrlInsert(), trackbackController::triggerSendTrackback().

00213                       {
00214         $num_args = func_num_args();
00215         $args_list = func_get_args();
00216 
00217         if(!$num_args) return Context::getRequestUri();
00218 
00219         return Context::getUrl($num_args, $args_list);
00220     }

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

& getView ( module_name  ) 

module의 view 객체 생성용

매개변수:
module_name 모듈이름
반환값:
module view instance

func.inc.php 파일의 110 번째 라인에서 정의되었습니다.

다음을 참조함 : getModule().

다음에 의해서 참조됨 : ModuleHandler::displayContent(), pageAdminView::dispPageAdminPageAdditionSetup(), ModuleHandler::procModule(), ModuleObject::stop().

00110                                     {
00111         return getModule($module_name, 'view');
00112     }

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

& getWAP ( module_name  ) 

module의 wap 객체 생성용

매개변수:
module_name 모듈이름
반환값:
module wap class instance

func.inc.php 파일의 155 번째 라인에서 정의되었습니다.

다음을 참조함 : getModule().

00155                                    {
00156         return getModule($module_name, 'wap');
00157     }

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

handleError ( errno,
errstr,
file,
line 
)

php5 이상에서 error_handing을 debugPrint로 변경

매개변수:
errno 
errstr 
반환값:
file
line

func.inc.php 파일의 587 번째 라인에서 정의되었습니다.

다음을 참조함 : $output, debugPrint().

00587                                                         {
00588         if(!__DEBUG__) return;
00589         $errors = array(E_USER_ERROR, E_ERROR, E_PARSE);
00590         if(!in_array($errno, $errors)) return;
00591 
00592         $output = sprintf("Fatal error : %s - %d", $file, $line);
00593         $output .= sprintf("%d - %s", $errno, $errstr);
00594 
00595         debugPrint($output);
00596     }

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

isSiteID ( domain  ) 

가상사이트의 Domain이 url형식인지 site id인지 return

func.inc.php 파일의 320 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : Context::_getUrl(), Context::init(), moduleController::insertSite(), moduleController::updateSite().

00320                                {
00321         return preg_match('/^([a-z0-9\_]+)$/i', $domain);
00322     }

json_encode2 ( data  ) 

func.inc.php 파일의 806 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : DisplayHandler::_toJSON().

00806                                  {
00807         switch (gettype($data)) {
00808             case 'boolean':
00809               return $data?'true':'false';
00810             case 'integer':
00811             case 'double':
00812               return $data;
00813             case 'string':
00814               return '"'.strtr($data, array('\\'=>'\\\\','"'=>'\\"')).'"';
00815             case 'object':
00816               $data = get_object_vars($data);
00817             case 'array':
00818               $rel = false; // relative array?
00819               $key = array_keys($data);
00820               foreach ($key as $v) {
00821                 if (!is_int($v)) {
00822                   $rel = true;
00823                   break;
00824                 }
00825               }
00826 
00827               $arr = array();
00828               foreach ($data as $k=>$v) {
00829                 $arr[] = ($rel?'"'.strtr($k, array('\\'=>'\\\\','"'=>'\\"')).'":':'').json_encode2($v);
00830               }
00831 
00832               return $rel?'{'.join(',', $arr).'}':'['.join(',', $arr).']';
00833             default:
00834               return '""';
00835         }
00836     }

if (!function_exists('hexrgb')) mysql_pre4_hash_password ( password  ) 

mysql old_password 의 php 구현 함수 제로보드4나 기타 mysql4.1 이전의 old_password()함수를 쓴 데이터의 사용을 위해서 mysql의 password.c 소스 참조해서 구현함

func.inc.php 파일의 729 번째 라인에서 정의되었습니다.

다음을 참조함 : $password.

다음에 의해서 참조됨 : memberModel::isValidPassword().

00729                                                  {
00730         $nr = 1345345333;
00731         $add = 7;
00732         $nr2 = 0x12345671;
00733 
00734         settype($password, "string");
00735 
00736         for ($i=0; $i<strlen($password); $i++) {
00737             if ($password[$i] == ' ' || $password[$i] == '\t') continue;
00738             $tmp = ord($password[$i]);
00739             $nr ^= ((($nr & 63) + $add) * $tmp) + ($nr << 8);
00740             $nr2 += ($nr2 << 8) ^ $nr;
00741             $add += $tmp;
00742         }
00743         $result1 = sprintf("%08lx", $nr & ((1 << 31) -1));
00744         $result2 = sprintf("%08lx", $nr2 & ((1 << 31) -1));
00745 
00746         if($result1 == '80000000') $nr += 0x80000000;
00747         if($result2 == '80000000') $nr2 += 0x80000000;
00748 
00749         return sprintf("%08lx%08lx", $nr, $nr2);
00750     }

removeHackTag ( content  ) 

해킹 시도로 의심되는 코드들을 미리 차단

이미지나 동영상등의 태그에서 src에 관리자 세션을 악용하는 코드를 제거

  • 취약점 제보 : 김상원님

func.inc.php 파일의 620 번째 라인에서 정의되었습니다.

다음을 참조함 : removeJSEvent(), removeSrcHack().

다음에 의해서 참조됨 : importerAdminController::importMember(), commentController::insertComment(), documentController::insertDocument(), memberController::putSignature(), communicationController::sendMessage(), commentController::updateComment(), documentController::updateDocument().

00620                                      {
00621         // 특정 태그들을 일반 문자로 변경
00622         $content = preg_replace('/<(\/?)(iframe|script|meta|style|applet)/is', '&lt;$1$2', $content);
00623 
00624         // XSS 사용을 위한 이벤트 제거
00625         $content = preg_replace_callback("!<([a-z]+)(.*?)>!is", removeJSEvent, $content);
00626 
00631         $content = preg_replace_callback("!<([a-z]+)(.*?)>!is", removeSrcHack, $content);
00632 
00633         return $content;
00634     }

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

removeJSEvent ( matches  ) 

func.inc.php 파일의 636 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : removeHackTag().

00636                                      {
00637         $attrs = $matches[2];
00638 
00639         // vbscript|javascript 제거
00640         if(preg_match('/(src|href|lowsrc|dynsrc)=("|\'?)([\r\n]*)(vbscript|javascript)/is', $matches[2])) {
00641             $attrs = preg_replace('/(src|href|lowsrc|dynsrc)=("|\'?)([\r\n]*)(vbscript|javascript)/is','$1=$2_$4', $attrs);
00642         }
00643         if(preg_match('/(url)[ \n]*\(("|\'?)([\r\n]*)(vbscript|javascript)/is', $matches[2])) {
00644             $attrs = preg_replace('/(url)[ \n]*\(("|\'?)([\r\n]*)(vbscript|javascript)/is','$1($2_$4', $attrs);
00645         }
00646 
00647         // 이벤트 제거
00648         // 전제 : 1. 이벤트명 앞에는 개행(r, n, rn)문자와 공백 문자만 올 수 있음
00649         //        2. 이벤트명 뒤에는 등호(=)가 존재해야하나 앞, 뒤에 공백이 있을 수 있음
00650         //        3. 에디터 컴포넌트에서 on으로 시작하는 변수명을 가질 수 있으므로 실제 이벤트명만을 체크해야 함
00651         $attrs = preg_replace(
00652             '/(\r|\n| )+on(click|dblclick|mousedown|mouseup|mouseover|mouseout|mousemove|keydown|keyup|keypress|load|unload|abort|error|select|change|submit|reset|resize|scroll|focus|blur)+([= ]+)/is',
00653             ' _on$2=',
00654             $attrs
00655         );
00656 
00657         // 링크를 새창으로 열기 위한 이벤트만 복구
00658         $attrs = preg_replace('/_onclick=("|\')window\.open\(this\.href\);(.?)return false;("|\')/i','onclick=$1window.open(this.href);$2return false;$3', $attrs);
00659 
00660         return '<'.$matches[1].$attrs.'>';
00661     }

removeSrcHack ( matches  ) 

func.inc.php 파일의 663 번째 라인에서 정의되었습니다.

다음을 참조함 : $oXmlParser, fixQuotation().

다음에 의해서 참조됨 : removeHackTag().

00663                                      {
00664         $tag = strtolower(trim($matches[1]));
00665 
00666         $buff = trim(preg_replace('/(\/>|>)/','/>',$matches[0]));
00667         $buff = str_replace(array('&','&amp;'),array('&amp;','&amp;'),$buff);
00668         $buff = preg_replace_callback('/([^=^"^ ]*)=([^ ^>]*)/i', fixQuotation, $buff);
00669 
00670         $oXmlParser = new XmlParser();
00671         $xml_doc = $oXmlParser->parse($buff);
00672 
00673         // src값에 module=admin이라는 값이 입력되어 있으면 이 값을 무효화 시킴
00674         $src = $xml_doc->{$tag}->attrs->src;
00675         $dynsrc = $xml_doc->{$tag}->attrs->dynsrc;
00676         $lowsrc = $xml_doc->{$tag}->attrs->lowsrc;
00677         $href = $xml_doc->{$tag}->attrs->href;
00678         if(_isHackedSrc($src) || _isHackedSrc($dynsrc) || _isHackedSrc($lowsrc) || _isHackedSrc($href) ) return sprintf("<%s>",$tag);
00679 
00680         return $matches[0];
00681     }

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

url_decode ( str  ) 

한글이 들어간 url의 decode

func.inc.php 파일의 613 번째 라인에서 정의되었습니다.

00613                               {
00614         return preg_replace('/%u([[:alnum:]]{4})/', '&#x\\1;',$str);
00615     }

utf8RawUrlDecode ( source  ) 

javascript의 escape의 php unescape 함수 Function converts an Javascript escaped string back into a string with specified charset (default is UTF-8). Modified function from http://pure-essence.net/stuff/code/utf8RawUrlDecode.phps

func.inc.php 파일의 766 번째 라인에서 정의되었습니다.

다음을 참조함 : _code2utf().

다음에 의해서 참조됨 : widgetController::execute().

00766                                         {
00767         $decodedStr = '';
00768         $pos = 0;
00769         $len = strlen ($source);
00770         while ($pos < $len) {
00771             $charAt = substr ($source, $pos, 1);
00772             if ($charAt == '%') {
00773                 $pos++;
00774                 $charAt = substr ($source, $pos, 1);
00775                 if ($charAt == 'u') {
00776                     // we got a unicode character
00777                     $pos++;
00778                     $unicodeHexVal = substr ($source, $pos, 4);
00779                     $unicode = hexdec ($unicodeHexVal);
00780                     $decodedStr .= _code2utf($unicode);
00781                     $pos += 4;
00782                 }
00783                 else {
00784                     // we have an escaped ascii character
00785                     $hexVal = substr ($source, $pos, 2);
00786                     $decodedStr .= chr (hexdec ($hexVal));
00787                     $pos += 2;
00788                 }
00789             } else {
00790                 $decodedStr .= $charAt;
00791                 $pos++;
00792             }
00793         }
00794         return $decodedStr;
00795     }

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

zdate ( str,
format = 'Y-m-d H:i:s',
conversion = true 
)

YYYYMMDDHHIISS 형식의 시간값을 원하는 시간 포맷으로 변형.

매개변수:
string|int str YYYYMMDDHHIISS 형식의 시간 값
string format php date()함수의 시간 포맷
bool conversion 언어에 따라 날짜 포맷의 자동변환 여부
반환값:
string

func.inc.php 파일의 434 번째 라인에서 정의되었습니다.

다음을 참조함 : elseif, Context::getLang(), Context::getLangType(), getMonthName(), ztime().

다음에 의해서 참조됨 : memberController::doLogin(), ExtraItem::getFormHTML(), documentItem::getRegdate(), contentItem::getRegdate(), commentItem::getRegdate(), getTimeGap(), documentItem::getUpdate(), commentItem::getUpdate(), ExtraItem::getValueHTML().

00434                                            :i:s', $conversion=true) {
00435         // 대상 시간이 없으면 null return
00436         if(!$str) return;
00437 
00438         // 언어권에 따라서 지정된 날짜 포맷을 변경
00439         if($conversion == true) {
00440             switch(Context::getLangType()) {
00441                 case 'en' :
00442                 case 'es' :
00443                         if($format == 'Y-m-d') $format = 'M d, Y';
00444                         elseif($format == 'Y-m-d H:i:s') $format = 'M d, Y H:i:s';
00445                         elseif($format == 'Y-m-d H:i') $format = 'M d, Y H:i';
00446                     break;
00447                 case 'vi' :
00448                         if($format == 'Y-m-d') $format = 'd-m-Y';
00449                         elseif($format == 'Y-m-d H:i:s') $format = 'H:i:s d-m-Y';
00450                         elseif($format == 'Y-m-d H:i') $format = 'H:i d-m-Y';
00451                     break;
00452 
00453             }
00454         }
00455 
00456         // 년도가 1970년 이전이면 별도 처리
00457         if((int)substr($str,0,4) < 1970) {
00458             $hour = (int)substr($str,8,2);
00459             $min = (int)substr($str,10,2);
00460             $sec = (int)substr($str,12,2);
00461             $year = (int)substr($str,0,4);
00462             $month = (int)substr($str,4,2);
00463             $day = (int)substr($str,6,2);
00464             $string = str_replace(
00465                         array('Y','m','d','H','h','i','s','a','M', 'F'),
00466                         array($year,$month,$day,$hour,$hour/12,$min,$sec,($hour <= 12) ? 'am' : 'pm',getMonthName($month), getMonthName($month,false)),
00467                         $format
00468                     );
00469         } else {
00470             // 1970년 이후라면 ztime()함수로 unixtime을 구하고 date함수로 처리
00471             $string = date($format, ztime($str));
00472         }
00473 
00474         // 요일, am/pm을 각 언어에 맞게 변경
00475         $unit_week = Context::getLang('unit_week');
00476         $unit_meridiem = Context::getLang('unit_meridiem');
00477         $string = str_replace(array('Monday','Tuesday','Wednesday','Thursday','Friday','Saturday','Sunday'),$unit_week, $string);
00478         $string = str_replace(array('am','pm','AM','PM'), $unit_meridiem, $string);
00479         return $string;
00480     }

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

zgap (  ) 

func.inc.php 파일의 363 번째 라인에서 정의되었습니다.

다음을 참조함 : $GLOBALS, $time_zone.

다음에 의해서 참조됨 : ztime().

00363                     {
00364         $time_zone = $GLOBALS['_time_zone'];
00365         if($time_zone < 0) $to = -1; else $to = 1;
00366         $t_hour = substr($time_zone, 1, 2) * $to;
00367         $t_min = substr($time_zone, 3, 2) * $to;
00368 
00369         $server_time_zone = date("O");
00370         if($server_time_zone < 0) $so = -1; else $so = 1;
00371         $c_hour = substr($server_time_zone, 1, 2) * $so;
00372         $c_min = substr($server_time_zone, 3, 2) * $so;
00373 
00374         $g_min = $t_min - $c_min;
00375         $g_hour = $t_hour - $c_hour;
00376 
00377         $gap = $g_min*60 + $g_hour*60*60;
00378         return $gap;
00379     }

ztime ( str  ) 

YYYYMMDDHHIISS 형식의 시간값을 unix time으로 변경.

매개변수:
str YYYYMMDDHHIISS 형식의 시간값
반환값:
int

func.inc.php 파일의 386 번째 라인에서 정의되었습니다.

다음을 참조함 : zgap().

다음에 의해서 참조됨 : getTimeGap(), zdate().

00386                          {
00387         if(!$str) return;
00388         $hour = (int)substr($str,8,2);
00389         $min = (int)substr($str,10,2);
00390         $sec = (int)substr($str,12,2);
00391         $year = (int)substr($str,0,4);
00392         $month = (int)substr($str,4,2);
00393         $day = (int)substr($str,6,2);
00394         if(strlen($str) <= 8) {
00395             $gap = 0;
00396         } else {
00397             $gap = zgap();
00398         }
00399 
00400         return mktime($hour, $min, $sec, $month?$month:1, $day?$day:1, $year)+$gap;
00401     }

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:


변수 문서화

if (version_compare(phpversion(), '5.0')< 0) if (!function_exists('iconv')) $time_zone

php5에 대비하여 clone 정의

iconv 함수가 없을 경우 빈 함수를 만들어서 오류가 생기지 않도록 정의

func.inc.php 파일의 34 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : installAdminController::procInstallAdminSaveTimeZone(), zgap().


생성시간 : Wed Oct 28 22:59:40 2009, 프로젝트명 : XpressEngine, 생성자 :   doxygen 1.6.1