PHP Install#

php 환경 설정#

gzip압축 & 버퍼링 관련
	output_buffering = Off
	zlib.output_compression = Off

	ob_start("ob_gzhandler");

	http://www.whatsmyip.org/mod_gzip_test/ 
	http://phpschool.com/gnuboard4/bbs/board.php?bo_table=tipntech&wr_id=58182&cwin=1

	http://blog.creorix.com/14

메모리 & 파일 업로드 관련
	파일 업로드 관련 환경 설정
	file_uploads = On			파일 업로드 활성화
	upload_max_filesize = 20M		파일 업로드 최대 용량
	post_max_size = 21M			post 요청 최대 용량	upload_max_filesize보다 커야함
	max_execution_time = 30			php 실행제한 시간(대용량 파일이 있을경우 늘여 주어야 한다.) 초단위
	max_input_time = 60			get, post 업로드 시간 제한 초단위
	memory_limit = 24M			최대 업로드 가능 용량	post_max_size 보다 커야 함
	
	http://www.phpschool.com/gnuboard4/bbs/board.php?bo_table=tipntech&wr_id=55577&page=21
	http://www.compuz.com/board/view.php?id=support_1&no=97512&page=27&sort=name&
	http://infosec.pe.kr/tag/php.ini

기타
	<?php, <? 둘다 사용 가능
	short_open_tag = On
	
	//변수 사용과 관련된 옵션 $_GET['aa'] -> $aa 로 사용할수있게 하느냐 마느냐
	register_globals = On

PHP finally#

PHP에는 finally구문이 없다.

mysql, ftp 등의 자원을 페이지 호출이 끝나고 나면 자동으로 해제해준다.

finally구문의 사용용도는 에러발생시 자원을 필히 해제하기 위해서 인데
PHP는 자동 해제이기 때문에 필요가 없다.

PHP 에러 처리#

  • 에러메세지 종류 설명
Parse error
	문법상에서 문제가 있을 경우 발생

Fatal error
	선언하지 않은 함수를 호출하는 등 프로그램 구조상의 문제

Warning: 
	프로그램상에서 어떠한 작업을 올바르지 수행하지 못하게 될 경우(문법적이 아닌 오류)에 주로 발생
	MySQL 오류는 100% Warning 오류가 됨
	php.ini의 설정 충돌 문제

	프로그램 로직이 죽지 않고 계속 실행 됨
  • 로직 종료
아래함수는 php의 로직을 바로 종료 하게 만든다.
	die();
	exit();
  • 에러메세지 재정의
set_error_handler
	에러메세지 발생시 처리 로직을 사용자가 임의로 수정 할 수 있음
	에러 발생시 로그를 기록 한다던지 에러메세지를 이쁘게 보여주고 싶을때 사용
  • trigger_error
trigger_error("에러메세지 출력1", E_USER_WARNING);
	Warning: 에러메세지 출력 발생위치 표시
trigger_error("에러메세지 출력2", E_USER_NOTICE);
	Notice: 에러메세지 출력 발생위치 표시
trigger_error("에러메세지 출력3", E_USER_ERROR);	
	Fatal error: 에러메세지 출력 발생위치 표시 & 프로그램 로직 종료
  • Exception 예외처리

try
{
    에러 발생로직
} catch(Exception $e) {
    print($e->getMessage());
}
  • Exception 예외 발생
    throw new Exception("에러 메세지");


    Exception을 캐취 하지 않았을때는
    예외발생시 로직이 중단되며 예외 메세지와 함수 호출 static trace를 출력해준다.

Add new attachment

Only authorized users are allowed to upload new attachments.

List of attachments

Kind Attachment Name Size Version Date Modified Author Change note
pdf
PHP_tuning_optimizing_Jung_Jin... 2,572.8 kB 1 17-May-2021 01:15 박동재 php 튜닝등의 정보
« This page (revision-) was last changed on 17-5월-2021 01:16 by UnknownAuthor