有關中英文混合字符串截取

<?php
error_reporting(E_ALL);
function substring($str, $start)
  $strlen = strlen($str); 
  if($start > $strlen)
  { 
return ""; 
  } 
  
  for($i = 0; $i < $start; $i++) //判斷真實的字節開始位置
  { 
if(ord($str[$i]) > 0x7f )
{
  $start++;
  $i++; 
  } 
  $len=1;
if(ord($str[$start]) > 0x7f) //高位大於127 是漢字 截取兩個字節
  $len++; 
  
 return substr($str, $start, $len); //只截取1個字符,模擬str[]
function new_str_array($str)
{
$mb_str_length=mb_strlen($str,'gb2312');
$new_str=array();
for($i=0;$i<$mb_str_length;$i++)
{
$new_str[]=substring($str,$i); //每次截取的一個字符放到$new_str[]數組裏
}
return $new_str;
}

$a=new_str_array("中文a字符1");
echo $a[2];
echo $a[1];
?>
相關文章
相關標籤/搜索