Limitar e cortar a quantidade de caracteres de um texto com PHP é muito simples, usaremos duas funções para isso, a função strlen(), que retorna o tamanho de uma string. E a função substr(), que retorna um pedaço de uma string.
Vamos usar esse exemplo, criamos uma variável qualquer, contendo um texto...
$texto = "Usaremos essa variável, com esse texto de exemplo, lembrando que tudo é contado como caractere, tanto acentos, caracteres especiais e os espaços";
Agora para sabermos a quantidade de caracteres que contem essa variável, basta utlizarmos a função strlen().
echo strlen($texto);
E o resultado da quantidade de caracteres é 147. Agora para limitarmos a quantidade de caracteres que será mostrado, basta verificarmos, informando qual a quantidade máxima de caracteres que desejamos. Vamos supor que o máximo seja 100, então, caso a string seja maior que 100, usaremos a função substr(), que retorna parte de uma string, que no nosso caso é a parte até 100 caracteres...
// Se o texto for maior que 100, exibe até 100 caracteres
if(strlen($texto) > 100){
echo substr($texto, 0, 100);
}
// senão exibi o texto completo
else{
echo $texto;
}
Explicando o código, primeiro verificamos se o texto é maior que 100, caso seja, exibimos o texto até 100, partindo de 0, esse segundo parâmetro que no nosso caso foi o 0, serve para dizer de onde começaremos a contar, até chegarmos a 100. Começamos de 0, mas poderíamos ter começado de qualquer outro numeral. E caso o texto seja menor que 100, exibimos ele completo.
E para finalizarmos, podemos colocar reticências (três pontinhos), caso seja maior que 100, só para mostrar que o texto tem continuação.
// Se o texto for maior que 100, exibe até 100 caracteres
if(strlen($texto) > 100){
echo substr($texto, 0, 100) . "...";
}
// Senão exibi o texto completo
else{
echo $texto;
}