[AYUDA] Mostrar solo x cantidad de caracteres en index con PHP [/AYUDA]

  • Autor Autor JoseCuevas
  • Fecha de inicio Fecha de inicio
JoseCuevas

JoseCuevas

Iota
Verificación en dos pasos activada
Verificado por Whatsapp
Hola betas buenos días!

Tengo una duda, cómo puedo hacer para que al momento de mostrar un texto mas o menos largo en PHP en un blog solo se muestren 50 los primeros 50 carateres y a contiuación haya un botón que diga "Ver más"

¿Tienen alguna idea de cómo hacerlo?

Gracias :welcoming:
 
Insertar CODE, HTML o PHP:
$texto = "muchos caracteres...";

$intro = substr($texto,0,500);
 
[MENTION=26950]JoseCuevas[/MENTION] te comparto la función que yo huso
PHP:
//cortar text
function cortarTexto($texto){
    if (strlen($texto) > '4000'){
       $texto=substr($texto, 0,4000);
       $index=strrpos($texto, " ");
       $texto=substr($texto, 0,$index); 
       return $texto.="...";
    }else{
        return $texto;
    }
}
echo cortarTexto($texto);
donde $texto = 'a todo el texto que quiero cortar'; y 4000 son el numero de caracteres puedes poner el limite que quieras
 

Gracias, solo que tengo un problemilla, mira, con este echo muestro la descripción es decir el texto largo, como podría adaptarle esto que me acabas de enseñar?

Este es el echo:
PHP:
echo "<div id='descripcion'>".$row['Descripcion']."</div>";
 
Gracias, solo que tengo un problemilla, mira, con este echo muestro la descripción es decir el texto largo, como podría adaptarle esto que me acabas de enseñar?

Este es el echo:


Así quedaría:

PHP:
echo "<div id='descripcion'>".substr($row['Descripcion'],0,500)."...</div>";
 
[MENTION=26950]JoseCuevas[/MENTION] te comparto la función que yo huso
PHP:
//cortar text
function cortarTexto($texto){
    if (strlen($texto) > '4000'){
       $texto=substr($texto, 0,4000);
       $index=strrpos($texto, " ");
       $texto=substr($texto, 0,$index); 
       return $texto.="...";
    }else{
        return $texto;
    }
}
echo cortarTexto($texto);
donde $texto = 'a todo el texto que quiero cortar'; y 4000 son el numero de caracteres puedes poner el limite que quieras

Así quedaría:

PHP:
echo "<div id='descripcion'>".substr($row['Descripcion'],0,500)."...</div>";

Me funcionó 😀

Muchisimas gracias por su ayuda!
 
Hola, el problema con usar substr y despues concatenar ... es que si el texto tiene menos de la cantidad de caracteres a truncar, aparecen los puntos suspensivos igual. Te recomiendo usar:

mb_strimwidth($string, 0, $cantMax, "...");
 
Atrás
Arriba