storage_path laraveles array_add array php template-engine laravel blade

php - array_add - laraveles helpers



Truncar cadena en plantillas de hoja Laravel (5)

En Laravel 4 y 5, puede usar str_limit , que limita el número de caracteres en una cadena.

{{ str_limit($string, $limit = 150, $end = ''...'') }}

Para más funciones de ayudante de Laravel http://laravel.com/docs/helpers#strings

¿Hay un modificador truncado para las plantillas de hoja en Laravel, más o menos como Smarty?

Sé que podría simplemente escribir el php real en la plantilla, pero estoy buscando algo un poco mejor para escribir (no profundicemos en todo el PHP es un debate de motor de plantillas).

Entonces, por ejemplo, estoy buscando algo como:

{{ $myVariable|truncate:"10":"..." }}

Sé que podría usar algo como Twig a través del compositor, pero espero tener una funcionalidad integrada en Laravel.

De lo contrario, es posible crear sus propios modificadores reutilizables, como lo proporciona Smarty. Me gusta el hecho de que Blade no exagera con toda la sintaxis, pero creo que truncar es una función realmente útil.

Estoy usando Laravel 4.


Esto funciona en Laravel 5:

{!!strlen($post->content) > 200 ? substr($post->content,0,200) : $post->content!!}



Puede establecer el espacio de nombres como:

{!! /Illuminate/Support/Str::words($item->description, 10,''....'') !!}


Editar: Esta respuesta se publicó durante la versión beta de Laravel 4, cuando la clase Str no existía. Ahora hay una mejor manera de hacerlo en Laravel 4, que es la respuesta de Dustin a continuación. No puedo eliminar esta respuesta debido a las reglas SO (no me deja)

Blade en sí no tiene esa funcionalidad.

En Laravel 3 estaba la clase Str, que podrías hacer:

{{ Str::limit($myVariable, 10) }}

En esta etapa, no creo que la clase Str esté en Laravel 4, pero aquí hay un puerto que puedes incluir en el compositor para agregar a tu propio proyecto.