texto muestra loremipsum lorem ipsum getlorem generador php lorem-ipsum

php - muestra - lorem ipsum texto



¿Cómo obtener texto aleatorio de lorem Ipsum en PHP? (5)

Quiero el texto aleatorio de Lorem Ipsum para poder usarlo al generar páginas web. ¿No puedo encontrar ninguna función de PHP que haga esto y me pregunto si hay bibliotecas o API disponibles públicamente en los sitios que podrían usarse para obtener texto aleatorio?


Realmente no quería hacer una llamada a la API para obtener un texto aleatorio, así que lo escribí yo mismo:

<?php abstract class Lorem { public static function ipsum($nparagraphs) { $paragraphs = []; for($p=0; $p<$nparagraphs; ++$p) { $nsentences = random_int(3,8); $sentences = []; for($s=0; $s<$nsentences; ++$s) { $frags = []; $commaChance = .33; while(true) { $nwords = random_int(3, 15); $words = self::random_values(self::$lorem, $nwords); $frags[] = implode('' '', $words); if(self::random_float() >= $commaChance) { break; } $commaChance /= 2; } $sentences[] = ucfirst(implode('', '', $frags)) . ''.''; } $paragraphs[] = implode('' '',$sentences); } return implode("/n/n",$paragraphs); } private static function random_float() { return random_int(0, PHP_INT_MAX-1)/PHP_INT_MAX; } private static function random_values($arr, $count) { $keys = array_rand($arr, $count); if($count == 1) { $keys = [$keys]; } return array_intersect_key($arr, array_fill_keys($keys, null)); } private static $lorem = [ 0 => ''lorem'', 1 => ''ipsum'', 2 => ''dolor'', 3 => ''sit'', 4 => ''amet'', 5 => ''consectetur'', 6 => ''adipiscing'', 7 => ''elit'', 8 => ''praesent'', 9 => ''interdum'', 10 => ''dictum'', 11 => ''mi'', 12 => ''non'', 13 => ''egestas'', 14 => ''nulla'', 15 => ''in'', 16 => ''lacus'', 17 => ''sed'', 18 => ''sapien'', 19 => ''placerat'', 20 => ''malesuada'', 21 => ''at'', 22 => ''erat'', 23 => ''etiam'', 24 => ''id'', 25 => ''velit'', 26 => ''finibus'', 27 => ''viverra'', 28 => ''maecenas'', 29 => ''mattis'', 30 => ''volutpat'', 31 => ''justo'', 32 => ''vitae'', 33 => ''vestibulum'', 34 => ''metus'', 35 => ''lobortis'', 36 => ''mauris'', 37 => ''luctus'', 38 => ''leo'', 39 => ''feugiat'', 40 => ''nibh'', 41 => ''tincidunt'', 42 => ''a'', 43 => ''integer'', 44 => ''facilisis'', 45 => ''lacinia'', 46 => ''ligula'', 47 => ''ac'', 48 => ''suspendisse'', 49 => ''eleifend'', 50 => ''nunc'', 51 => ''nec'', 52 => ''pulvinar'', 53 => ''quisque'', 54 => ''ut'', 55 => ''semper'', 56 => ''auctor'', 57 => ''tortor'', 58 => ''mollis'', 59 => ''est'', 60 => ''tempor'', 61 => ''scelerisque'', 62 => ''venenatis'', 63 => ''quis'', 64 => ''ultrices'', 65 => ''tellus'', 66 => ''nisi'', 67 => ''phasellus'', 68 => ''aliquam'', 69 => ''molestie'', 70 => ''purus'', 71 => ''convallis'', 72 => ''cursus'', 73 => ''ex'', 74 => ''massa'', 75 => ''fusce'', 76 => ''felis'', 77 => ''fringilla'', 78 => ''faucibus'', 79 => ''varius'', 80 => ''ante'', 81 => ''primis'', 82 => ''orci'', 83 => ''et'', 84 => ''posuere'', 85 => ''cubilia'', 86 => ''curae'', 87 => ''proin'', 88 => ''ultricies'', 89 => ''hendrerit'', 90 => ''ornare'', 91 => ''augue'', 92 => ''pharetra'', 93 => ''dapibus'', 94 => ''nullam'', 95 => ''sollicitudin'', 96 => ''euismod'', 97 => ''eget'', 98 => ''pretium'', 99 => ''vulputate'', 100 => ''urna'', 101 => ''arcu'', 102 => ''porttitor'', 103 => ''quam'', 104 => ''condimentum'', 105 => ''consequat'', 106 => ''tempus'', 107 => ''hac'', 108 => ''habitasse'', 109 => ''platea'', 110 => ''dictumst'', 111 => ''sagittis'', 112 => ''gravida'', 113 => ''eu'', 114 => ''commodo'', 115 => ''dui'', 116 => ''lectus'', 117 => ''vivamus'', 118 => ''libero'', 119 => ''vel'', 120 => ''maximus'', 121 => ''pellentesque'', 122 => ''efficitur'', 123 => ''class'', 124 => ''aptent'', 125 => ''taciti'', 126 => ''sociosqu'', 127 => ''ad'', 128 => ''litora'', 129 => ''torquent'', 130 => ''per'', 131 => ''conubia'', 132 => ''nostra'', 133 => ''inceptos'', 134 => ''himenaeos'', 135 => ''fermentum'', 136 => ''turpis'', 137 => ''donec'', 138 => ''magna'', 139 => ''porta'', 140 => ''enim'', 141 => ''curabitur'', 142 => ''odio'', 143 => ''rhoncus'', 144 => ''blandit'', 145 => ''potenti'', 146 => ''sodales'', 147 => ''accumsan'', 148 => ''congue'', 149 => ''neque'', 150 => ''duis'', 151 => ''bibendum'', 152 => ''laoreet'', 153 => ''elementum'', 154 => ''suscipit'', 155 => ''diam'', 156 => ''vehicula'', 157 => ''eros'', 158 => ''nam'', 159 => ''imperdiet'', 160 => ''sem'', 161 => ''ullamcorper'', 162 => ''dignissim'', 163 => ''risus'', 164 => ''aliquet'', 165 => ''habitant'', 166 => ''morbi'', 167 => ''tristique'', 168 => ''senectus'', 169 => ''netus'', 170 => ''fames'', 171 => ''nisl'', 172 => ''iaculis'', 173 => ''cras'', 174 => ''aenean'', ]; }

Uso:

Lorem::ipsum(5);

Salida de muestra:

""" Ligula ornare commodo elementum. Cursus gravida bibendum. Lacus integer auctor primis ad odio suscipit diam, justo feugiat hendrerit. Ipsum suspendisse nunc tempor ultrices orci odio potenti imperdiet netus fames. Viverra feugiat sollicitudin euismod commodo dui lectus magna sem aliquet cras, sit mattis vulputate enim eros. Interdum a primis orci arcu porttitor taciti. Maecenas mauris mollis purus nullam enim laoreet aliquet, maecenas feugiat auctor vulputate quam condimentum vehicula tristique. Consectetur mauris auctor sollicitudin./n /n Sit at tincidunt lacinia nec tempus conubia bibendum fames. Justo massa odio. Sit praesent tincidunt nisi molestie cursus ornare tempus class duis, dolor vitae luctus eleifend ut curae hendrerit vulputate dui aptent litora suscipit dignissim, sed auctor ultricies dictumst vel. Etiam mattis a est phasellus felis posuere pharetra consequat platea taciti torquent neque nisl cras. Adipiscing in viverra a molestie fusce pretium tempus porta curabitur. Aptent risus nisl./n /n Ipsum quisque auctor venenatis varius posuere hendrerit eu libero vel taciti ad conubia cras, placerat nec phasellus gravida aliquet. Dictum lacus leo facilisis ut quis gravida litora bibendum laoreet. Interdum tincidunt ac suspendisse venenatis nullam pretium hac himenaeos diam vehicula./n /n Nulla eleifend varius hendrerit condimentum efficitur fames. Metus pulvinar pretium habitasse vivamus efficitur turpis porta rhoncus elementum netus. Mollis phasellus fusce nullam eu vel sodales duis./n /n Ipsum egestas pulvinar tortor venenatis fusce consequat pellentesque class fermentum potenti suscipit diam tristique. Sit tellus magna. Lobortis venenatis quis nisi condimentum nostra ullamcorper. """

Esto depende de las funciones CSPRNG de PHP 7, que puede realizar un relleno múltiple o una sub-salida para mt_rand si está en PHP 5.x.


tienes que usar su clase, debes incluirlo en tu proyecto con este comando echo Lorem::create($lang = Lorem::LANG_FA , $count = 5 , $type = Lorem::TYPE_PARAGRAPH , $end = ''...''); entonces aquí está la clase

class Lorem { const TYPE_WORD = 1; const TYPE_CHAR = 2; const TYPE_PARAGRAPH = 3; const LANG_EN = ''en''; static private $en = ''Lorem ipsum ''; static function create($lang = self::LANG_FA, $count = 10, $type = self::TYPE_WORD, $end = ''...'') { $out = ''''; if ($lang == self::LANG_FA) $lorem = self::$fa; else $lorem = self::$en; switch ($type) { case self::TYPE_WORD : $words = explode('' '', $lorem); $i = 0; foreach ($words as $word) { if ($i == $count) break; $out .= '' '' . $word; $i++; } break; case self::TYPE_CHAR : for ($i = 0; $i <= $count; $i++) { $out .= $lorem[$i]; } break; case self::TYPE_PARAGRAPH: for ($i = 0; $i < $count; $i++) { $out .= ''<p>'' . $lorem . ''</p>''; } break; } return $out . $end; }

}


http://www.lipsum.com/

para uso php:

$lipsum = simplexml_load_file(''http://www.lipsum.com/feed/xml?amount=1&what=paras&start=0'')->lipsum;

o en una función:

function random_lipsum($amount = 1, $what = ''paras'', $start = 0) { return simplexml_load_file("http://www.lipsum.com/feed/xml?amount=$amount&what=$what&start=$start")->lipsum; }


$content = file_get_contents(''http://loripsum.net/api'');

Docs en la parte inferior derecha de esta página :

Simplemente haga una solicitud GET en loripsum.net/api, para obtener un texto de marcador de posición. Puede agregar parámetros adicionales para especificar la salida que obtendrá. Digamos que necesita 10 párrafos cortos con encabezados, use http://loripsum.net/api/10/short/headers . Todos los parámetros posibles son:

  • (entero) - El número de párrafos a generar.
  • corto, medio, largo, muy largo - La longitud promedio de un párrafo.
  • decorar - Agrega negrita, cursiva y texto marcado.
  • enlace - Añadir enlaces.
  • ul - Añadir listas desordenadas.
  • ol - Añadir listas numeradas.
  • dl - Añadir listas de descripciones.
  • bq - Añadir blockquotes.
  • código - Añadir ejemplos de código.
  • encabezados - Añadir encabezados
  • allcaps - Usa TODAS las CAPS.
  • Prude - Versión Prude.
  • texto sin formato: devuelve texto sin formato, no HTML.

$lipsum = simplexml_load_file(''http://www.lipsum.com/feed/xml?amount=1&what=paras&start=0'')->lipsum;

O puedes hacer una función:

function random_lipsum($amount = 1, $what = ''paras'', $start = 0) { return simplexml_load_file("http://www.lipsum.com/feed/xml?amount=$amount&what=$what&start=$start")->lipsum; }

blog.ergatides.com/2011/08/16/…