Strings addcslashes
(PHP 4, PHP 5, PHP 7, PHP 8)
addcslashes — C 스타일의 슬래시가 있는 인용 문자열
설명
addcslashes(string $string
, string $characters
): string
characters
매개변수에 나열된 문자 앞에 백슬래시가 있는 문자열을 반환합니다.
매개변수
string
- 이스케이프할 문자열입니다.
characters
- 이스케이프할 문자 목록입니다.
characters
에\n
,\r
등의 문자가 포함되어 있으면 C와 같은 스타일로 변환되는 반면 ASCII 코드가 32보다 낮고 126보다 큰 영숫자가 아닌 다른 문자는 8진수 표현으로 변환됩니다.charlist 인수에서 일련의 문자를 정의할 때 범위의 시작과 끝으로 설정한 문자 사이에 어떤 문자가 오는지 알아야 합니다.
<?php echo addcslashes('foo[ ]', 'A..z'); // output: \f\o\o\[ \] // All upper and lower-case letters will be escaped // ... but so will the [\]^_` ?>
또한 범위의 첫 번째 문자가 범위의 두 번째 문자보다 높은 ASCII 값을 갖는 경우 범위가 구성되지 않습니다. 시작, 끝 및 마침표 문자만 이스케이프됩니다. ord() 함수를 사용하여 문자의 ASCII 값을 찾습니다.
<?php echo addcslashes("zoo['.']", 'z..A'); // output: \zoo['\.'] ?>
이스케이프 문자 0, a, b, f, n, r, t 및 v를 선택하는 경우 주의하십시오. 이 문자는 \0, \a, \b, \f, \n, \r, \t 및 \v, 모두 C에서 사전 정의된 이스케이프 시퀀스입니다. 이러한 시퀀스의 대부분은 PHP를 비롯한 다른 C 파생 언어에서도 정의됩니다. 즉, addcslashes()의 출력을 사용하여
characters
로 정의된 이러한 문자를 사용하여 해당 언어로 코드를 작성합니다.
반환 값
이스케이프된 문자열을 반환합니다.
Examples
"\0..\37"과 같은 characters
로, 0에서 31 사이의 ASCII 코드로 모든 문자를 이스케이프합니다.
예제 #1 addcslashes() 예제
<?php
$escaped = addcslashes($not_escaped, "\0..\37!@\177..\377");
?>
기타
- stripcslashes() - addcslashes로 인용된 인용 해제 문자열
- stripslashes() - 인용된 문자열의 인용 해제
- addslashes() - 슬래시가 있는 인용 문자열
- htmlspecialchars() - 특수 문자를 HTML 엔터티로 변환
- quotemeta() - 인용 메타 문자