'php 한글 자르기'에 해당되는 글 3건

  1. 2013.12.12 php 한글 문자열 자르기
  2. 2013.12.11 php 한글을 포함한 문자열 자르기 함수 mb_strcut()
  3. 2009.07.13 PHP 한글 글자 수 1로 인식
프로그램/php2013. 12. 12. 18:07
반응형

<?
// 문자열 자르기
function cut_str($str, $len, $suffix = '')
{
    $str = strip_tags(stripslashes(trim($str)));

if(strlen($str) > $len)
{
    $cnt = 0;
    $len2 = $len;
    $str2 = '';

for($i = 0; $i < $len2 ; $i++)
{
    $cut = ord(substr($str, $i, 1));

   if($cut > 127)
   {
       $cnt++;
       $str2 .= substr($str, $i, 2);
       $i++;
       $len2++;
   }

   else
   {
       $str2 .= substr($str, $i, 1);
   }

}

}

return $str = $str2 . $suffix;

}


// 사용 예
$ary[] = "홍길동이다";
$ary[] = "honghong";
$ary[] = "11길동01";
$ary[] = "길1동2이3";
$ary[] = "길12동2이3";
$ary[] = "길동122이3";
$ary[] = "abcde";
$ary[] = "고두";
$ary[] = "12341324고두";
$ary[] = "\'\*\":;#!";
$ary[] = "\"홍길동\"";


foreach($ary as $k => $v)
{
    echo "<br />" . $v . " / " . cut_str($v, 3, '..');
}
?>

 

 

한글 문자열 자르기 더보기>

반응형
Posted by 은둔고수
프로그램/php2013. 12. 11. 18:44
반응형

한글을 포함한 문자열의 일부를 추출할 때,
2바이트 문자의 한바이트만이 들어올 수 있는 문제의 해결은
PHP에서 지원하는 Multibyte String 관련 함수를 사용하는 것이 가장 간단하다.

 

string mb_strcut ( string $str , int $start [, int $length [, string $encoding ]] )

- $start 의 위치가 2바이트문자의 두번째 바이트에 위치하고 있으면 한 바이트 앞에서 시작함.
- $length 만큼 자르고, 마지막 바이트가 2바이트 문자의 첫번째 바이트이면 그 앞에서 자른다.

 

예제)
echo mb_strcut('테스트', 0, 3, 'euc-kr');
==> 테

 

* PHP 설치시 --enable-mbstring 옵션을 주어야 함.

 

한글 문자열 자르기 더보기>

반응형
Posted by 은둔고수
프로그램/php2009. 7. 13. 23:34
반응형

[php-tip]PHP 한글 글자 수 1로 인식

 

 

<?

$data_ori = "가나AB";
$cut_size = 3;

$data_len = mb_strlen ($data_ori);
echo "data len=".$data_len."<br>";

$data_len = mb_strlen ($data_ori,"utf-8");
echo "data len=".$data_len."<br>";


$data = mb_substr ($data_ori, 0, $cut_size,"utf-8");
echo "data=".$data."<br>";
?>

반응형
Posted by 은둔고수