치환문제 질문합니다. 정보
치환문제 질문합니다.
본문
<?
include_once './_common.php';
$stx = "개";
$urldecode = urldecode($stx);
$name = "엔키노";
$content = $name;
$content = strip_tags($content);
$content = cut_str($content, 300);
$content = str_replace($urldecode, "<b>$urldecode</b>", $content);
echo $content;
?>
위와 같은 코드로 사용하면 캡처된 이미지처럼 글자가 깨집니다.
환경은 euc-kr 입니다만...
해결 방법을 알려주세요.
include_once './_common.php';
$stx = "개";
$urldecode = urldecode($stx);
$name = "엔키노";
$content = $name;
$content = strip_tags($content);
$content = cut_str($content, 300);
$content = str_replace($urldecode, "<b>$urldecode</b>", $content);
echo $content;
?>
위와 같은 코드로 사용하면 캡처된 이미지처럼 글자가 깨집니다.
환경은 euc-kr 입니다만...
해결 방법을 알려주세요.

댓글 전체

헉.. 포인트 내꺼.
선리플 후 감상(?) --;;;
선리플 후 감상(?) --;;;
일단 달아놓아야 하는건가요? --;
일단 달아야 하는 분위기군요~~~

같이 달아야 하는 분위인듯~~~

부끄부끄;;
일단 달아봅니다만
어떤 결과를 원하는게 아니라 str_replace()함수의 이해못할 버그를 알려주고 싶은거 같아요
아무래도 모두 낚인거 같습니다 포인트가 오만점에다가 마지막에 고양이 비웃는 모습을 보면 좀 수상함 ....ㅋㅋ
어떤 결과를 원하는게 아니라 str_replace()함수의 이해못할 버그를 알려주고 싶은거 같아요
아무래도 모두 낚인거 같습니다 포인트가 오만점에다가 마지막에 고양이 비웃는 모습을 보면 좀 수상함 ....ㅋㅋ
당췌 어떤 결과를 원하는데 저렇게 코딩한건가요? 아리송~

저역시 아리송 하네요.~

php 에 한글처리 버그가 존재하는 것 같습니다....만 원인은 찾지 못했네요.
생각해본건 두가지 해결방법 입니다.
1. iconv 함수를 이용하여 utf-8 로 변환 후 str_replace 다시 iconv 로 euckr 변환 후 출력
2. mysql 함수를 사용하는 것.
아래 코드는 mysql 함수를 사용한 예제입니다.
<?
include_once './_common.php';
$stx = "개";
$urldecode = urldecode($stx);
$name = "엔키노";
$content = $name;
$content = strip_tags($content);
$content = cut_str($content, 300);
//$content = str_replace($urldecode, "<b>$urldecode</b>", $content);
$qry = sql_fetch("select replace('$content', '$urldecode', '<b>$urldecode</b>') as result");
$conten = $qry[result];
echo $content;
?>
생각해본건 두가지 해결방법 입니다.
1. iconv 함수를 이용하여 utf-8 로 변환 후 str_replace 다시 iconv 로 euckr 변환 후 출력
2. mysql 함수를 사용하는 것.
아래 코드는 mysql 함수를 사용한 예제입니다.
<?
include_once './_common.php';
$stx = "개";
$urldecode = urldecode($stx);
$name = "엔키노";
$content = $name;
$content = strip_tags($content);
$content = cut_str($content, 300);
//$content = str_replace($urldecode, "<b>$urldecode</b>", $content);
$qry = sql_fetch("select replace('$content', '$urldecode', '<b>$urldecode</b>') as result");
$conten = $qry[result];
echo $content;
?>

그나저나 이거 정말 우끼네요 --;;
echo str_replace('개', '', '엔키노');
출력물 : 엔통
echo str_replace('개', '', '엔키노');
출력물 : 엔통

함수를 만들어 쓰는것도 괜찮을듯..
function str_replace2($from, $to, $str)
{
$from = addslashes($from);
$to = addslashes($to);
$str = addslashes($str);
$qry = sql_fetch("select replace(\"$str\", \"$from\", \"$to\") as result");
return $qry[result];
}
db 부하가 걸리려나 --;;
function str_replace2($from, $to, $str)
{
$from = addslashes($from);
$to = addslashes($to);
$str = addslashes($str);
$qry = sql_fetch("select replace(\"$str\", \"$from\", \"$to\") as result");
return $qry[result];
}
db 부하가 걸리려나 --;;
utf-8 로 하면 아무 문제가없는뎅 ㅠ.ㅠ
글타면, 이런 경우 안당할려면 앞으로 모든 홈페쥐는 utf-8로 만들어야 겠네요 컹~ (심각하게 고민중...)
글타면, 이런 경우 안당할려면 앞으로 모든 홈페쥐는 utf-8로 만들어야 겠네요 컹~ (심각하게 고민중...)
utf-8 에서 한글길이는 3
euc-kr에서 한글길이는 2
utf-8에서는 잘 나오는데 euc-kr에서는 잘 안나오고,
음... 곱슬최씨님의 의견이 유력...
euc-kr에서 한글길이는 2
utf-8에서는 잘 나오는데 euc-kr에서는 잘 안나오고,
음... 곱슬최씨님의 의견이 유력...

채택 3