본문 바로가기

프로그래밍

[PHP] 문자발송시 80자씩 잘라서 리턴하는 함수

반응형

사용법은 아래를 참고해주세요~ 

 

<? 

$str = "테스트 동해물과 백두산이 마르고 닳도록 하느님이 보우하사 우리나라만세 무궁화 삼천리 화려강산 대한사람 대한으로 길이보전하세";

 

$arrs = utf8_strs($str,80); 

print_r($arrs); 

 

 

 

 

function utf8_strs($str, $len=80){

$strs = utf8_str_split($str, 1);

  $arrno = 0; 

foreach($strs as $s){

$high = ord($s{0}); 

   if ($high < 0x80) $i += 1;

   else   $i += 2;        

$nowlen = $i%$len; 

if($prelen>$nowlen) $arrno++; 

$arrstr[$arrno] .= $s; 

$prelen = $nowlen; 

}

return $arrstr; 

}

 

 

 

 

function utf8_str_split($str='',$len=1){

    preg_match_all("/./u", $str, $arr);

    $arr = array_chunk($arr[0], $len);

    $arr = array_map('implode', $arr);

    return $arr;

}

 

?>

반응형