半角英数であろうと、全角であろうと、文字化けさせずに文字を丸める関数が、PHPにはあります。

それが、

mb_strimwidth

という関数です。

$title = mb_strimwidth($this_data[1],0,50,"...",utf8);

のように使います。意味は、

$title = mb_strimwidth(<文字を丸めたい文字列>,<文字を丸める始点>,<文字を丸める終点>,"<丸めた後に付ける文字列>",<丸める文字列の文字コード。必須では無い>);

という感じです。

より詳細な解説はこちら

mb_strimwidth

を使うと、文字化けする場合があります。

文字化けを回避するテクニックはありますが、敢えて使わずに、mb_strimwidthを使う方が楽でしょう。