php 에서 strtolower(), strtoupper() 사용시 한글 깨짐문제
php 에서 필요에 따라 strtolower(), strtoupper() 함수 사용시 한글이 깨지는 현상이 발생하기도 한다.
이 함수를 사용하기전에
<?php
setlocale(LC_CTYPE, 'C');
?>
위와같이 사용해주면 한글이 깨지는 현상을 피할수있습니다.
<?php
setlocale(LC_CTYPE, 'C');
strtolower();
?>
급하게 시스템에 처리하려면
# export LC_ALL=ko
# apachectl stop
# apachectl start
기본적으로 시스템에서 해결을 하면 더욱좋은대
/etc/sysconfig/i18n 에
LC_ALL="ko"
을 추가합니다
한글문제해결위한 참고내용
/etc/sysconfig/i18n 에 다음을 추가 후 재부팅
LANG="ko_KR.eucKR"
SUPPORTED="en_US.UTF-8:en_US:en:ko_KR.eucKR:ko_KR:ko"
SYSFONT="latarcyrheb-sun16"
또 ssh 에서 한글깨질때 utf-8 로 보려면
/etc/profile
export LESSCHARSET=utf-8
vi /etc/sysconfig/i18n
LANG="ko_KR.UTF-8" 을 LANG="ko_KR.eucKR" 로 변경
# locale
LANG=ko_KR.eucKR
LC_CTYPE="ko_KR.eucKR"
LC_NUMERIC="ko_KR.eucKR"
LC_TIME="ko_KR.eucKR"
LC_COLLATE="ko_KR.eucKR"
LC_MONETARY="ko_KR.eucKR"
LC_MESSAGES="ko_KR.eucKR"
LC_PAPER="ko_KR.eucKR"
LC_NAME="ko_KR.eucKR"
LC_ADDRESS="ko_KR.eucKR"
LC_TELEPHONE="ko_KR.eucKR"
LC_MEASUREMENT="ko_KR.eucKR"
LC_IDENTIFICATION="ko_KR.eucKR"
LC_ALL=