Dev Blog

스크립트 & 소스코드 공유

실무에서 유용하게 쓰는 스크립트와 코드 조각을 블로그 게시판으로 저장하고 공유합니다.

3건의 글

PHP 함수 정의 위치(파일·줄 번호) 찾기 - ReflectionFunction

PHP에서 특정 함수가 어떤 파일의 몇 번째 줄에 정의되어 있는지 확인하는 방법이다. ReflectionFunction 클래스로 함수 정보를 생성한 뒤 getFileName()과 getStartLine()을 호출해 함수의 정의 위치를 출력하는 예제를 보여준다. 내장 함수의 소스를 찾을 때 유용하다.

$details = new ReflectionFunction('alert');
print $details->getFileName() . ':' . $details->getStartLine();

자바스크립트 print_r 함수 - 객체 구조를 HTML로 출력

PHP의 print_r처럼 자바스크립트 객체를 트리 구조의 HTML로 출력해주는 함수 예제다. 객체의 모든 속성을 순회하며, 중첩 객체는 들여쓰기를 적용해 재귀적으로 출력하고 기본형 값은 강조 표시한다. 배열 형태의 객체를 print_r로 변환해 지정한 div에 삽입하는 사용 예시를 보여준다.

<div id='video_related'></div>
<script>
var video_related = [<?php echo $video["video_related"]?>];
function print_r(theObj) {
var retStr = '';
if (typeof theObj == 'object') {
retStr += '<div style="font-family:Tahoma; font-size:7pt;">';
for (var p in theObj) {
if (typeof theObj[p] == 'object') {
retStr += '<div><b>['+p+'] => ' + typeof(theObj) + '</b></div>';
retStr += '<div style="padding-left:25px;">' + print_r(theObj[p]) + '</div>';
} else {
retStr += '<div>['+p+'] => <b>' + theObj[p] + '</b></div>';
}
}
retStr += '</div>';
}
return retStr;
}

var related = print_r(video_related);
$("#video_related").html(related);
</script>

까페24 호스팅에서 PHP 에러 메시지 출력하기

까페24 호스팅에서 PHP 작업 시 에러 메시지가 화면에 표시되지 않아 디버깅이 어려운 문제의 해결책을 정리했다. .htaccess에 php_value error_reporting 22527과 php_flag display_errors on을 추가하고, 코드 상단에 ini_set("display_errors", 1)와 error_reporting(E_ALL ^ E_NOTICE)를 넣거나 set_error_handler 클래스를 활용하는 방법을 설명한다.

[문제점]

최근 까페24호스팅에서 php작업시

화면에 에러메세지가 나오지 않아 디버깅시에 매우 곤란함

[해결책]

.htaccess 내용에 아래추가.

=====================================

php_value error_reporting 22527

php_flag display_errors on

=====================================

  1. 인클루드 시키는 라이브러리 젤첨에

ini_set("display_errors", 1);

error_reporting(E_ALL ^ E_NOTICE);

추가

  1. 넷상에 공개된 set_error_handler 클래스 이용


Let's create something great together.

프로젝트 문의 및 견적 요청은 언제든 환영합니다.