L

불당님. 리사이즈에서 특정 파일명일때 인코드 문제 해결입니다.

bug.jpg
/extend/b4.lib.php
수정했습니다.

유니코드가 있을 경우 강제로 다시 매치시킵니다.

*수정사항은 아래와 같습니다.

function Unicode_to_UTF(); 추가.

44line에

$img['src']=preg_replace_callback("@(&#[0-9]{3};)@","Unicode_to_UTF",$img['src']);

추가.

첨부파일은 UTF-8로 되어 있습니다.

첨부파일

b4.lib.php (7.2 KB) 2회 2009-02-28 13:36
bug.jpg (385.6 KB)
0회 2009-02-28 13:35
|

댓글 4개

http://kr2.php.net/manual/kr/function.mb-convert-encoding.php

새로운 함수를 정의하지 말고 아래처럼 mb_convert_encoding 함수로 바꿔보세요.
아래코드를 resize 함수의 가장 앞에 위치하면 됩니다.

$img['src']=mb_convert_encoding($img['src'], $g4['charset'])
해당 함수로는 문제가 되는 &#???; 형식의 유니코드에서의 변환이 이루어지지 않습니다.
아래 코드를 실행하시고 소스보기로 확인해 주세요. 'ㅅ'

<?php
echo mb_convert_encoding('on','EUC-KR');
?>
아~ 그렇군요.

http://kr.php.net/manual/kr/function.html-entity-decode.php

이거는 htmlentities()를 한거니까 역함수가 있을꺼라 생각하니 있더라구요.
아래처럼 하니까 정상 변환이 됩니다. php 4.3 이상이니까 국내의 어지간한
호스팅에서도 문제가 없을거 같구요.

<?
echo html_entity_decode('on');
?>

그런데, 메시지를 보니까 os가 윈도인가요?
역시 역함수가 있었군요.;ㅅ;
좋은 함수 하나 알아갑니다.
작은 코드들 수정하고 테스트할때 업로드하는 과정이 번거로워서 테스트는 로컬PC에 APM깔고 하고 있습니다. ^^
댓글을 작성하시려면 로그인이 필요합니다.

그누보드에는 여러가지 기능 추가가 쉽도록 제작 되었습니다. 플러그인의 저작권은 해당 플러그인 제작자님께 있으며, 그누보드의 저작권과 다를 수 있습니다. 플러그인 다운로드시 좋아요와 감사의 코멘트를 남기시면 제작자에게 큰 힘이됩니다. ^^y

+
제목 글쓴이 날짜 조회
09-03-11 조회 1,077
09-03-08 조회 1,071
09-03-08 조회 967
09-03-07 조회 1,285
09-03-06 조회 1,005
09-03-06 조회 2,875
09-03-06 조회 2,895
09-03-04 조회 1,219
09-03-03 조회 1,045
09-03-03 조회 992
09-03-03 조회 1,054
09-03-02 조회 886
09-03-02 조회 899
09-03-02 조회 1,049
09-03-02 조회 943