[PHP함수] 안전한 문자열 출력을 위한 함수들
string trim ( string $str [, string $charlist ] )
- 주어진 문자열의 앞뒤 공백을 제거 (PHP4, PHP5)
- charlist가 지정되지 않으면 아래와 같은 문자들이 제거됨
- " "(공백), "\t"(탭), "\n"(개행), "\r"(케리지리턴), "\0"(널바이트), "\x0B"(수직탭)을 제거
- 위의 공백 및 탭등은 문자열 앞,뒤에 있는경우에만 처리됨
string number_format ( float $number [, int $decimals = 0 ] )
string number_format ( float $number , int $decimals = 0 , string $dec_point = '.' , string $thousands_sep = ',' )
- 주어진 숫자를 지정된 형식에 맞게 반환 (PHP4, PHP5)
- decimals는 소수점 표현갯수이며, 끝에서 반올림 처리됨
- dec_point는 소수점의 표현문자이며, thousands_sep는 천단위마다 구분 문자를 지정함
- 금액등을 표시할때 천단위 콤마 표현 형식에 활용
string htmlspecialchars ( string $string [, int $flags = ENT_COMPAT [, string $charset [, bool $double_encode = true ]]] )
- 특수 문자를 HTML엔티티로 변환
- HTML에서 특별한 의미를 갖는 몇가지 특수문자에 대하여 엔티티로 변환후 반환
- flags가 ENT_COMPAT이면 큰따옴표(")만 변환, ENT_QUOTES이면 작은따옴표('), 큰따옴표(") 모두 변환
- ENT_NOQUOTES이면 따옴표는 변환하지 않는다
- '&' -> '&' , '"' -> '"' , ''' -> ''' , '<' -> '<' , '>' -> '>' 로 변환됨
- charset는 문자셋 지정
string htmlentities ( string $string [, int $flags = ENT_COMPAT [, string $charset [, bool $double_encode = true ]]] )
- 해당하는 모든 문자를 HTML엔티티로 변환
- HTML 문자 엔티티에 존재하는 모든 문자를 엔티티로 변환하는 점을 제외하면 htmlspecialchars()와 완전히 동일
- 한글 깨짐이 발생하는 경우 htmlspecialchars() 함수를 이용
string nl2br ( string $string [, bool $is_xhtml = true ] )
- 모든 줄바꿈 앞에 '<br />'이나 <br>을 삽입후 반환 (PHP4, PHP5)
string strip_tags ( string $str [, string $allowable_tags ] )
- 주어진 str에서 모든 HTML과 PHP 태그를 제거한 문자열을 반환 (PHP4, PHP5)
- fgetss() 함수와 동일 태그 제거 방식을 가짐
- allowable_tags에 제거하지 않을 태그 지정 가능하나 HTML주석과 PHP태그는 변경 안됨
- <a> 태그등으로 링크를 보낼경우를 대비하여 크로스사이트 스크립트 공격을 방지한다
string addslashes ( string $str )
- 데이터베이스 질의등에서 처리할 필요가 있는 문자 앞에 백슬래시를 붙인 문자열을 반환 (PHP4, PHP5)
- 따옴표('), 이중따옴표("), 백슬래시(\), NUL(NULL 바이트)을 이스케이프 시킴
- get_magic_quotes_gpc()로 확인하여 true일 경우 GET, POST, COOKIE 데이터에 자동 이스케이프 된다
- 따라서, addslashes()를 사용하면 중복 이스케이프가 되니 사용하지 말것
string stripslashes ( string $str )
- 백슬래시(\) 처리된 문자열을 백슬래시를 제거후 반환 (PHP4, PHP5)
- get_magic_quotes_gpc() 기능이 활성화되어있는 경우 넘어온 자료를 HTML에 바로 출력하는 경우등에 활용
- get_magic_quotes_gpc() 함수가 true인경우 이함수를 이용후 mysql_real_escape_string() 함수를 사용
string mysql_real_escape_string ( string $unescaped_string [, resource $link_identifier ] )
- unescaped_string 문자열에서 mysql_query() 실행시 안전한 질의문으로 변환하여 반환한다 (PHP4 >= 4.3.0, PHP5)
- \x00, \n, \r, \, ', ", \x1a 문자에 백슬래시를 붙인다
- link_identifier은 연결된 데이터베이스 연결링크를 넘겨주어야 하고, DB가 연결된 상태에서만 함수 이용이 가능
- 성공시 이스케이프된 문자열을 반환하고, 실패시 FALSE를 반환
string sprintf ( string $format [, mixed $args [, mixed $... ]] )
- 형식화한 문자열을 반환 (PHP4, PHP5)
- format 문자열에는 %다음에 나오는 지정어에 따라 인수를 어떤 형으로 취급할지 결정
- %% - 퍼센트 자체를 출력, %d - 정수 출력, %u - 음수 부호없는 정수 출력, %f - 소수 출력, %s - 문자열 출력
- 쿼리문 작성시 echo 문으로 바로 작성하는것 보다 sprintf()를 통해 문자열을 만들어 이용하는것이 좋음
※ 로그인 하시면 원본파일을 볼 수 있습니다. ※
관리자 2011-06-22 00:16:46
0
HEREDOC 내에서는 함수처리를 할 수가 없죠
HEREDOC 바로 윗줄에다 $list[$i][wr_3]=number_format($list[$i][wr_3]);
답글달기