Php通过计算回显的字符来分割回显,添加可变内容,然后继续回显
我需要我的php代码来计算回显文本中的字符数。当计数达到64时,我需要它回显“$something”,并从停止的位置继续回显 另外,最好的情况是,这段代码不应该裁剪完整的单词 比如说 --这: --结果会是这样的:Php通过计算回显的字符来分割回显,添加可变内容,然后继续回显,php,count,character,echo,Php,Count,Character,Echo,我需要我的php代码来计算回显文本中的字符数。当计数达到64时,我需要它回显“$something”,并从停止的位置继续回显 另外,最好的情况是,这段代码不应该裁剪完整的单词 比如说 --这: --结果会是这样的: echo 'This is a huge string that i mean to crop acording to it\'s ' . $something . 'character\'s count. For every 64 characters including spac
echo 'This is a huge string that i mean to crop acording to it\'s ' . $something . 'character\'s count. For every 64 characters including spaces ' . $something . 'i need it to echo some other thing in the middle';
为了更好地理解。。。我需要这段代码来解决SVG文本无法包装和对齐的问题
你会用mb_strimwidth吗?怎么做
提前谢谢
---更新1-我已尝试失败
echo mb_strimwidth($row['resumen'], 0, 84, "$something");
echo mb_strimwidth($row['resumen'], 64, 64, "$something");
echo mb_strimwidth($row['resumen'], 128, 64, "$something");
---更新2-部分成功强>
$uno = substr($row['resumen'], 0, 64);
$dos = substr($row['resumen'], 64, 64);
$tres = substr($row['resumen'], 128, 64);
$suma = $uno . "</text><text>" . $dos . "</text><text>" . $tres;
echo "$suma";
$uno=substr($row['resumen'],0,64);
$dos=substr($row['resumen'],64,64);
$tres=substr($row['resumen'],128,64);
$suma=$uno。"" . $磁盘操作系统"" . $tres;
回声“$suma”;
但这只是重复了我文章的第一行。终于找到了这个解决方案:
$n=0;
$var="Texto largo mayor a 64 caracteres que complica mi utilizacion de una infografia en svg, ya que este lenguaje no acepta wrappers para el texto. Era muy lindo para ser verdad.";
$ts= mb_strwidth($var);
//Ahora defino una variable que cuenta el texto que queda por imprimir.
$aimprimir=mb_strwidth($var);
if ($ts>64){
while ($aimprimir>64):
//mientras reste por imprimir un texto de largo mayor que 64....
echo mb_strimwidth($var,$n,70,"<br/>");
$aimprimir=$aimprimir-64;
$n=$n+65;
endwhile;
//si lo que resta por imprimir es menor o igual a 64 entonces imprimalo...
echo mb_strimwidth($var,$n,$aimprimir,"<br/>");
}
else {
echo "$var";
}
$n=0;
$var=“Texto largo mayor一个64克拉的字符是svg中信息共享的一部分,它没有包装纸。这是一个时代。”;
$ts=mb_标准宽度($var);
//一个定义是一个变量,这个变量是一个文本变量。
$aimprimir=mb_strwidth($var);
如果($ts>64){
而($aimprimir>64):
//在拉戈市市长的办公室里。。。。
echo mb_strimwidth($var,$n,70,“
”);
$aimprimir=$aimprimir-64;
$n=$n+65;
结束时;
//这是一个64个项目的改进。。。
echo mb_strimwidth($var,$n,$aimprimir,“
”);
}
否则{
回声“$var”;
}
终于找到了这个解决方案:
$n=0;
$var="Texto largo mayor a 64 caracteres que complica mi utilizacion de una infografia en svg, ya que este lenguaje no acepta wrappers para el texto. Era muy lindo para ser verdad.";
$ts= mb_strwidth($var);
//Ahora defino una variable que cuenta el texto que queda por imprimir.
$aimprimir=mb_strwidth($var);
if ($ts>64){
while ($aimprimir>64):
//mientras reste por imprimir un texto de largo mayor que 64....
echo mb_strimwidth($var,$n,70,"<br/>");
$aimprimir=$aimprimir-64;
$n=$n+65;
endwhile;
//si lo que resta por imprimir es menor o igual a 64 entonces imprimalo...
echo mb_strimwidth($var,$n,$aimprimir,"<br/>");
}
else {
echo "$var";
}
$n=0;
$var=“Texto largo mayor一个64克拉的字符是svg中信息共享的一部分,它没有包装纸。这是一个时代。”;
$ts=mb_标准宽度($var);
//一个定义是一个变量,这个变量是一个文本变量。
$aimprimir=mb_strwidth($var);
如果($ts>64){
而($aimprimir>64):
//在拉戈市市长的办公室里。。。。
echo mb_strimwidth($var,$n,70,“
”);
$aimprimir=$aimprimir-64;
$n=$n+65;
结束时;
//这是一个64个项目的改进。。。
echo mb_strimwidth($var,$n,$aimprimir,“
”);
}
否则{
回声“$var”;
}
您需要调查输出缓冲。在谷歌上搜索ob_start。我试过。。。。。echo mb_strimwidth($row['resumen'],0,84,“$something”);echo mb_strimwidth($row['resumen'],64,64,“$something”);echo mb_strimwidth($row['resumen'],128,64,“$something”);您需要调查输出缓冲。在谷歌上搜索ob_start。我试过。。。。。echo mb_strimwidth($row['resumen'],0,84,“$something”);echo mb_strimwidth($row['resumen'],64,64,“$something”);echo mb_strimwidth($row['resumen'],128,64,“$something”);