日期:2014-05-17  浏览次数:20351 次

php:怎样将中文字符以规定字符长度分段截取并将每段放入数组元素中
如:
$cont = "关于烹饪. 这套厨师类的魔幻小说其实小三已经酝酿很长时间了,但一直都觉得不成熟,就没有下笔.空速即……";
function subpart($cont,10,"utf8"){……}
$array = subpart($cont,10,"utf8");

$array = ([0]=>"关于烹饪. ",[1]=>"这套厨师类",[2]=>"的魔幻小说",……);

请教,subpart()函数应该怎样写?

------解决方案--------------------
function subpart($cont,$l,$utf)
{
$len = mb_strlen($cont, $utf);
for($i; $i<$len; $i+=$l)
$arr[] = mb_substr($cont, $i, $l, $utf);
Return $arr;
}
$cont = '中国人民,中国人民银行';
print_r(subpart($cont, 5, "utf8"));
------解决方案--------------------
<?php
$cont = "关于烹饪. 这套厨师类的魔幻小说其实小三已经酝酿很长时间了,但一直都觉得不成熟,就没有下笔.空速即……";

$array = subpart($cont,10,"utf8");

echo '<pre>';
print_r($array);

function subpart($cont, $len, $charset)
{
$contlen = strlen($cont);

for ($i=0; $i<=$contlen;$i+=$len)
{
$contarr[] = substr($cont,$i,$len);
}
return $contarr;
}
?>
------解决方案--------------------
楼上的方法都正确,当然你也可以写正则表达式匹配要分割的字符,比如‘,’‘|’。
然后用substr装数组