미채택 완료
파일에 한글로 기록을 한 뒤 기록을 보면 한글이 깨져있습니다.
기초가 없으니 이런게 늘 문제네요
파일에 한글로 기록을 한 뒤 기록을 보면 한글이 깨져있습니다.
그래서 아래 코드로 테스트를 해보니 두가지 문제가 ...
Copy
<?php
echo $str = "테스트". date("Y-m-d H:i:s")."\n";
$f = fopen('utf8.txt' , 'a' ) ;
fwrite($f, iconv( 'EUC-KR' ,'UTF-8' ,"UTF-8".$str) );
fwrite($f, "default".$str);
fclose( $f ) ;
?>
<a href="utf8.txt" >보기</a>
위 코드를 실행한후
1. 보기를 클릭해보면 아래처럼 깨져서 보입니다.
default�뚯뒪��2022-10-10 04:09:02
2. fwrite($f, iconv( 'EUC-KR' ,'UTF-8' ,"UTF-8".$str) ); 이코드로는 데이타를 쓰질 못하네요
|
답변 6개 / 댓글 7개
위 코드를 실행한후
1. 보기를 클릭해보면 아래처럼 깨져서 보입니다
==
어떤 브라우저를 쓰셨나요?
IE 같은 경우 가끔 utf8을 euc-kr 로 인식하는 경우가 있습니 다.

* 사진은
결과1 (t.php 실행)
결과2 (보기클릭)
소스 에디터
위 세개 창을 한개 이미지로 편집했습니다.
* 에디터 아래에 UTF-8 이렇게 써있으면 맞는건가요?
* 이제보니 시간이 오후4시인데 09시로 나오네요.. 뭔가 한글 깨지는거랑 관련이 있는가요?
답변에 대한 댓글 3개
타임존 설정은 그누관련 파일을 거치지 않았기 때문일거고
그누 타임설정 하는 부분을 참조하시면 됩니다.
응답인코딩은 다음을 참고해보세요.
https://httpd.apache.org/docs/current/en/mod/core.html#adddefaultcharset
OR
https://httpd.apache.org/docs/current/en/mod/mod_mime.html#addcharset
OR
https://httpd.apache.org/docs/current/mod/mod_autoindex.html#indexoptions
OR
[code]
<Files ~ "\.txt?$">
Header set Content-Type "text/html; charset=utf-8"
</Files>
[/code]
그누 타임설정 하는 부분을 참조하시면 됩니다.
응답인코딩은 다음을 참고해보세요.
https://httpd.apache.org/docs/current/en/mod/core.html#adddefaultcharset
OR
https://httpd.apache.org/docs/current/en/mod/mod_mime.html#addcharset
OR
https://httpd.apache.org/docs/current/mod/mod_autoindex.html#indexoptions
OR
[code]
<Files ~ "\.txt?$">
Header set Content-Type "text/html; charset=utf-8"
</Files>
[/code]
utf-8 인코딩을 사용하려면
파일의 저장 인코딩
파일이 웹브라우저에 내보내질때의 헤더 인코딩
모두 utf-8 하나로 통일해보세요
Copy
<?php
// header('Content-Type: text/html; charset=EUC-KR');
header('Content-Type: text/html; charset=UTF-8');
echo $str = "테스트". date("Y-m-d H:i:s")."\n";
$f = fopen('aa/utf8.txt' , 'a' ) ;
fwrite($f, iconv( 'EUC-KR' ,'UTF-8' ,"UTF-8".$str) );
fwrite($f, "default".$str);
fclose( $f ) ;
?>
<a href="aa/utf8.txt" >보기</a>
답변을 작성하려면 로그인이 필요합니다.