BIG
약간의 수정을 통해서 widget 파일의 경로를 지정할 수 있도록 하였다.
따라서 widgets 디렉토리 하위에 다시 디렉토리를 생성하여 widget 을 분류하여 사용할 수 있다.
class Widget
{
function Widget() {
$this--->_assign_libraries();
}
function run($name)
{
$args = func_get_args();
///////////////////////////////////////////////////////////////////
//
// @ 변경전
//
// require_once APPPATH.'/controllers/widgets/'.$name.EXT;
//
//
///////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////
//
// @ 변경후
$require_path = str_replace("//", "/", APPPATH.$name.EXT);
if( file_exists($require_path) == false )
{
echo "NoFile : ".$require_path;
}// end if
require_once $require_path;
$arrTemp = explode("/", $name);
$name = $arrTemp[ count($arrTemp)-1 ];
///////////////////////////////////////////////////////////////////
$name = ucfirst($name);
$widget = new $name();
return call_user_func_array(array(&$widget, 'run'), array_slice($args, 1));
}
function render($view, $data = array()) {
extract($data);
include APPPATH.'/views/widgets/'.$view.EXT;
}
function load($object) {
$this->$object =& load_class(ucfirst($object));
}
function _assign_libraries() {
$ci =& get_instance();
foreach (get_object_vars($ci) as $key => $object) {
$this->$key =& $ci->$key;
}
}
}
LIST
'!!...PHP > !!...HowTo' 카테고리의 다른 글
[How To] PHP 메모리 부족 메시지( Fatal error: Allowed memory size of ~ ) 출력상황 처리 방법 (0) | 2022.10.05 |
---|---|
[How To] Codeigniter3.x :/system/core/Log.php (0) | 2022.07.29 |
[How To] Apache PHP MariaDB 환경에서 WAS_01...? (0) | 2022.07.14 |
[How To] PHP를 이용한 다중 연결 소켓 통신 (0) | 2017.10.19 |
[How To] CURL 사용법 샘플 (0) | 2017.10.11 |