문자열 함수(2)

· 11년 전 · 2240

PHP 에서 제공하는 문자열 함수에 대해서 살펴보겠습니다.

먼저, htmlspecialchars() 함수부터  알아보겠습니다.

htmlspecialchars() 함수의 역할은

예를 들어, 사용자가 게시판에 글을 올릴 때

문장 내에 HTML 코드가 들어가는 특수 문자를 포함시켜 입력한 후 화면으로 출력할 때 그 HTML 특수 문자가 HTML 태그로 적용되어 출력되는 것이 아니라, HTML 특수 문자가 일반 문자로 인식되어 그대로 출력되도록 해줍니다.

바로, 다음과 같이 htmlspecialchars() 함수가 적용되면 각각의 HTML 특수 문자들을 일반 문자열로 인식할 수 있도록 바꾸어 줍니다.

'&' (앰퍼샌드) 는 '&' 로 바꾼다.

'"' (큰따옴표) 는 '"' 로 바꾼다.

''' (작은따옴표) 는 ''' 로 바꾼다.

'<' (~ 보다 작다는 기호) 는 '<' 로 바꾼다.

'>' (~ 보다 크다는 기호) 는 '>' 로 바꾼다.

그럼, htmlspecialchars() 함수가 적용되었을 때 어떤 결과가 출력되는지 간단한 예제를 보겠습니다.


<?
$string = "<a href = 'http://mizzle.uu.st'>mizzle.uu.st</a>";

echo("htmlspecialchars() 를 적용하지 않았을 때 : $string");

echo("<br>");

$string = htmlspecialchars($string);

echo("htmlspecialchars() 를 적용하였을 때 : $string");
?>


위 예제 코드를 웹브라우저로 출력하면 다음과 같은 결과를 보실 수 있습니다.

htmlspecialchars() 를 적용하지 않았을 때 : mizzle.uu.st
htmlspecialchars() 를 적용하였을 때 : <a href = 'http://mizzle.uu.st'>mizzle.uu.st</a>

이제 htmlspecialchars() 함수가 어떻게 쓰여지는지 대략 아시겠죠.

다음으로 nl2br() 함수에 대해서 알아보겠습니다.

nl2br() 함수의 역할은

PHP 코드내에서 문자열 가운데 개행 문자(New Line)를 의미하는 "/n" 문자가 포함되었을 때 그 개행 문자를 HTML 태그인 "<BR>" 로 바꾸어줍니다.

그럼, nl2br() 함수가 적용되었을 때 어떤 결과가 출력되는지 간단한 예제를 보겠습니다.


<?
$string = "Hello \n World";

echo("nl2br() 를 적용하지 않았을 때 : <br> $string");

echo("<br><br>");

$string = nl2br($string);

echo("nl2br() 를 적용하였을 때 : <br> $string");
?>


위 예제 코드를 웹브라우저로 확인하면 다음과 같은 결과를 보실 수 있습니다.

nl2br() 를 적용하지 않았을 때 :
Hello World

nl2br() 를 적용하였을 때 :
Hello
World


|
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

+
제목 글쓴이 날짜 조회
11년 전 조회 2,698
11년 전 조회 3,273
11년 전 조회 2,258
11년 전 조회 3,319
11년 전 조회 3,566
11년 전 조회 2,239
11년 전 조회 2,353
11년 전 조회 2,085
11년 전 조회 3,033
11년 전 조회 2,945
11년 전 조회 2,392
11년 전 조회 2,289
11년 전 조회 2,033
11년 전 조회 2,479
11년 전 조회 2,880
11년 전 조회 1,938
11년 전 조회 2,125
11년 전 조회 2,266
11년 전 조회 2,262
11년 전 조회 2,466
11년 전 조회 3,986
11년 전 조회 3,671
11년 전 조회 3,107
11년 전 조회 2,793
11년 전 조회 2,724
11년 전 조회 3,718
11년 전 조회 2,952
11년 전 조회 4,135
11년 전 조회 4,960
11년 전 조회 5,115
11년 전 조회 5,151
11년 전 조회 5,289
11년 전 조회 3,773
11년 전 조회 1.9만
11년 전 조회 2,741
11년 전 조회 2,458
11년 전 조회 2,454
11년 전 조회 2,236
11년 전 조회 2,403
11년 전 조회 2,242
11년 전 조회 2,015
11년 전 조회 2,467
11년 전 조회 2,162
11년 전 조회 2,104
11년 전 조회 2,385
11년 전 조회 2,280
11년 전 조회 2,069
11년 전 조회 2,235
11년 전 조회 2,249
11년 전 조회 2,241
11년 전 조회 2,358
11년 전 조회 1,957
11년 전 조회 2,035
11년 전 조회 2,188
11년 전 조회 2,055
11년 전 조회 2,118
11년 전 조회 2,032
11년 전 조회 1,980
11년 전 조회 2,057
11년 전 조회 2,696
11년 전 조회 2,015
11년 전 조회 2,320
11년 전 조회 2,207
11년 전 조회 1,965
11년 전 조회 1,975
11년 전 조회 2,072
11년 전 조회 2,029
11년 전 조회 2,614
11년 전 조회 5,496
11년 전 조회 2,570
11년 전 조회 2,296
11년 전 조회 2,728
11년 전 조회 8,919
11년 전 조회 2,474
11년 전 조회 3,696
11년 전 조회 2,504
11년 전 조회 2,443
11년 전 조회 2,760
11년 전 조회 2,237
11년 전 조회 2,214
11년 전 조회 2,223
11년 전 조회 2,274
11년 전 조회 2,907
11년 전 조회 2,287
11년 전 조회 2,544
11년 전 조회 2,344
11년 전 조회 6,032
11년 전 조회 2,058
11년 전 조회 2,473
11년 전 조회 2,851
11년 전 조회 2,395
11년 전 조회 6,687
11년 전 조회 4,790
11년 전 조회 6,382
11년 전 조회 2,239
11년 전 조회 2,572
11년 전 조회 2,779
11년 전 조회 2,615
11년 전 조회 2,587
11년 전 조회 2,033