如何在不切割单词PHP的情况下将字符串分成两部分?

时间:2015-05-08 11:14:35

标签: php

我有这个代码,当lenght大于64个字符时,会将字符串$ txt0分成两部分。问题是,有时候会给我一个字,就像是:

$txt0 = "This house is ... and really pretty"


----result----

This house is...and rel

ly pretty


$array_posiciones = array (-250, -200, -150, -100, -50);
 $posicion_lineas = 0;
if ( !empty($txt0) )
  {
      if ( strlen($txt0) > 64 ) 
      {
          $lines = str_split($txt0, 40);
          $listing_title->annotateImage($draw, 0, $array_posiciones[$posicion_lineas], 0, $lines[0]."-");
          $posicion_lineas++;
          $listing_title->annotateImage($draw, 0, $array_posiciones[$posicion_lineas], 0, $lines[1]);
          $posicion_lineas++;
      } else {
          $listing_title->annotateImage($draw, 0, $array_posiciones[$posicion_lineas], 0, $txt0);
          $posicion_lineas++;
      }
  }

我试图用imagick在图像上绘制两条干净的线条但是目前我可以避免在分隔线条时剪切一个字。谢谢你,我的英语很差。我希望你能理解这个问题。

1 个答案:

答案 0 :(得分:0)

$txt0_short0=substr($txt0,0,strrpos($txt0," ",64));
$txt0_short1=substr($txt0,strrpos($txt0," ",64));

它从第一个64字符之后的" "的第一个位置开始,并将其用作分割点。