mwultong Blog ... 프로그래밍 / 계산기

컴퓨터 엑셀 워드 포토샵 구글어스 WINDOWS JAVASCRIPT JAVA C++

 
Thursday, May 03, 2007

PHP 5] 운영체제에 맞게 개행문자 출력 상수; 자동 CRLF 줄바꿈; DOS Windows Newline


운영체제의 종류에 맞는 개행문자를 자동으로 출력하는 PHP 내장 상수(Constant)가 있더군요. PHP_EOL 입니다. EOL 은 "End of Line (행의 끝)"의 약자입니다.

"\n" 대신에 PHP_EOL 을 사용하면, 유닉스/리눅스에서는 LF (\n) 로 줄바꿈이 되고, 도스/윈도우에서는 CR LF (\r\n) 로 줄바꿈 문자가 자동으로 변경됩니다.

그러나 PHP_EOL 이런 상수를 "\n" 대신 사용하려면 타이핑하기도 힘들고 해서 별로 실용성은 없을 것입니다. Perl이나 C언어처럼 언어 내부적으로 개행문자를 자동 판단해 주었으면 좋겠습니다.

아래의 예제 소스를

PHP_EOL 사용 예제


파일명: eol.php
<?php

  echo "안녕하세요<br />" . PHP_EOL;
  echo "반갑습니다<br />" . PHP_EOL;

?>


윈도우 도스창(정식명칭은 명령프롬프트)에서 다음과 같이 실행 결과를 out.html 이라는 파일로 만든 후, 헥사 뷰어로 보면
옆으로스크롤가능
D:\Z>php eol.php
안녕하세요<br />
반갑습니다<br />


D:\Z>php eol.php > out.html

D:\Z>hexdump.pl out.html
00000000:  BE C8 B3 E7 C7 CF BC BC  BF E4 3C 62 72 20 2F 3E  ..........<br />
00000010:  0D 0A B9 DD B0 A9 BD C0  B4 CF B4 D9 3C 62 72 20  ............<br
00000020:  2F 3E 0D 0A 0D 0A                                 />....

D:\Z>


이제 0D 0A 즉 CR LF 로 줄바꿈되어 있습니다.

PHP_EOL 상수가 아닌, "\n" 으로 줄바꿈하면, 윈도우에서도 리눅스에서처럼, 그냥 0A (LF) 로 줄바꿈이 되어 버립니다.



▶▶ PHP 예제] 도스 줄바꿈, 유닉스 개행문자 출력; CR LF




tag: php
PHP

1 Comments:
At October 6, 2010 at 4:48 PM, Blogger qnibus said...

좋은 정보 감솨합니다. ^^

 

Post a Comment

<< Home RSS 2.0 feed

구글 Google 에서 제공하는 무료 블로그 서비스인 블로거 Blogger 의 인터넷 주소는 www.blogger.com 입니다. Blogger 에 블로그를 만들면, blogspot.com 이라는 주소에 블로그가 생성됩니다.
블로그를 직접 방문하지 않고도 최신 게시물을 구독하려면 RSS 2.0 feed 주소를 리더기에 등록하시면 됩니다.
Previous Posts
Monthly Archives
Top