potete farlo anche direttamente da mysql stesso che cosi caricate di meno php

SELECT *, IF(LENGTH(testo) > 50, CONCAT(SUBSTRING(testo, 1 , 47), '...'), testo) as testo_news FROM news

in questo modo quando estrai dentro il campo testo_news (al momento del fetch) ti ritrovi il testo troncato o quello completo.