| 제목 | CI 설치하며 우연히 보게된 코드. | ||
|---|---|---|---|
| 글쓴이 | 들국화 | 작성시각 | 2013/08/27 18:54:07 | 
| 
                         | 
                |||
| 
                         오늘 CI를 설치 하다가 우연히 웰컴페이지 하단에 페이지 로딩 속도가 나온걸 발견... 이건 뭐지 하고 보다가. core output 까지 보게 되었네요. 보다가 문득 드는 의문이... 속도, 유연성, 간결함을 중요시하는 CI가 왜 저런 코드를 넣었을까 의문이 생기네요. 그것도 거의 모든 페이지에서 사용하는 core output 에서 디폴트롤 사용을 하다니. 그것도 그냥 str_replace네요.. 음.. 왜 저렇케 쓰는지 이해가 안되네요. 
  if ($this->parse_exec_vars === TRUE)
  {
   $memory  = ( ! function_exists('memory_get_usage')) ? '0' : round(memory_get_usage()/1024/1024, 2).'MB';
   $output = str_replace('{elapsed_time}', $elapsed, $output);
   $output = str_replace('{memory_usage}', $memory, $output);
  }
그래서 저런 속도는 무시해도 괜찮아 하시는 분은 상관 없겠지만 저는 좀 찜찜 해서 아래 코드를 컨트롤러에 넣을까 고민 중입니다.약간 귀찮네요. 
 function __construct()
 {
  parent::__construct();
  $this->output->parse_exec_vars = FALSE;
 }
해줘야 할듯 하네요.outpu 보다 보니 재밋네요.. zlib 압축관련 코드들도 보이고...  | 
                |||
| 다음글 | 최근 코멘트가 안올라 가는 경우가 있네요. (5) | ||
| 이전글 | 책 증정 이벤트!!!! (상품권수 추가) (14) | ||
| 
                             
                                변종원(웅파)
                                /
                                2013/08/27 21:23:51 /
                                추천
                                0
                             
                             | 
                    
| 
                             
                                들국화
                                /
                                2013/08/28 11:19:55 /
                                추천
                                0
                             
                            
                                banchmark 에도 같은 기능이 있는것 같은데요. 
                        템플릿 기능인데 전 빼면 좋을듯 하네요. ^^ 코드가 좀 이상하다 했더니... str_replace에 첫번째 값이 자동으로 변경 되었네요.. ㅋㅋㅋㅋ 
 $output = str_replace('0.1098', $elapsed, $output);
 $output = str_replace('2.41MB', $memory, $output);
 [elapsed_time], [memory_usage] => [ ] 는 { }  | 
                    
| 
                             
                                한대승(불의회상)
                                /
                                2013/08/28 11:45:25 /
                                추천
                                0
                             
                            
                                아.... 무슨말인가 했넹.. ^^ 
                        { elapsed_time }, { memory_usage } 파서를 넣지 않아도 시간과 메모리 사용량이 왜 나오나 했더니..  | 
                    
| 
                             
                                milosz
                                /
                                2013/08/28 12:59:53 /
                                추천
                                0
                             
                            
                                https://github.com/EllisLab/CodeIgniter/blob/develop/system/core/Output.php#L440 
                        최신 리포에선 이미 제외된 것 같네요 :)  | 
                    
| 
                             
                                들국화
                                /
                                2013/08/28 13:35:26 /
                                추천
                                0
                             
                            
                                milosz/ 제외된게 아니라 배열로 한줄로 처리한걸로 보이네요. 
                        
$output = str_replace(array('{ elapsed_time }', '{ memory_usage }'), array($elapsed, $memory), $output); | 
                    
| 
                             
                                milosz
                                /
                                2013/08/28 14:59:25 /
                                추천
                                0
                             
                            
                                아... 본문에 숫자로 되어 있길래 숫자값으로 들어있단 얘긴줄 알았는데 ㅎㅎㅎ 파싱이 되는거군요?ㅋㅋ 
                        {elapsed_time}, {memory_usage}  | 
                    
프레임워크잖아요. ㅎㅎ