Traducir fecha a español en laravel

eswal200 Seguir

Préstamo
Zeta
Verificación en dos pasos activada
Verificado por Whatsapp
Desde
5 Ago 2015
Mensajes
1.591
Hola gente.

Estoy utilizando lo siguiente para mostrar en la viste una fecha:

PHP:
 <h5 class="mb-0 fw-900">{{ date('d M Y',  strtotime($project->Finalize))}} </h5>


Eso me muestra fecha de esta forma: 19 Jan 2021

pero quiero cambiar el mes que esta en ingles a español, el resultado seria: 19 enero 2021

Tienen idea de como puedo hacer esto, tengo rato y no hayo como hacerlo

En un proyecto en laravel

Saludos-
 

Charlie Araiza

Épsilon
Verificación en dos pasos desactivada
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
18 Dic 2012
Mensajes
930
Prueba con setlocale, es la forma estandar en PHP para cambiar de idioma de fechas.
 

Joao De Sousa

Dseda
Verificado
Verificación en dos pasos activada
Verificado por Whatsapp
¡Ha verificado su Paypal!
Verificado por Binance
Desde
10 Ago 2015
Mensajes
1.219
Saludos,

Por qué no usas Carbon para las fechas? Ya Laravel lo incluye.
 

eswal200

Préstamo
Zeta
Verificación en dos pasos activada
Verificado por Whatsapp
Desde
5 Ago 2015
Mensajes
1.591
Qué formato tienes en la variable $project->Finalize?

lo que hace es llamar la información de un campo en de la base de datos.

que seria la fecha de finalización. por eso la llame "Finalize"

todo funciona bien solo es que me muestra la fecha en ingles.
 

Joao De Sousa

Dseda
Verificado
Verificación en dos pasos activada
Verificado por Whatsapp
¡Ha verificado su Paypal!
Verificado por Binance
Desde
10 Ago 2015
Mensajes
1.219
lo que hace es llamar la información de un campo en de la base de datos.

que seria la fecha de finalización. por eso la llame "Finalize"

todo funciona bien solo es que me muestra la fecha en ingles.

Yo me refería si era de tipo fecha (timestamp). Si la columna de la base de datos es fecha. Me entiendes? Si ese es el caso, haz esto:

1.- Revisa que en el archivo config/app.php tienes en 'locale' => 'es',
2.- Agrega al AppServiceProvider.php en el método boot
PHP:
    public function boot()
    {
        \Carbon\Carbon::setLocale(config('app.locale'));
        ....
    }

3.- Acá ya puedes usar todas las fechas traducidas, ejemplo:

HTML:
<h5 class="mb-0 fw-900">{{ $project->Finalize->translatedFormat('d M Y') }}</h5>

No hace falta date o strtotime, ya con Carbon puedes usar el formato que quieres. Si quieres usar un formato normal sin estar traduciendo:

PHP:
{{ $project->Finalize->format('d/m/y') }}

Acá para que veas un poco la documentación: https://carbon.nesbot.com/docs
 

eswal200

Préstamo
Zeta
Verificación en dos pasos activada
Verificado por Whatsapp
Desde
5 Ago 2015
Mensajes
1.591
Ya te entiendo, no es timestamp es varchar, pero puedo crear otra sin problema

en el archivo app.php tenia varios lines con 'en' y las coloque en 'es'

'locale' => env('DEFAULT_LANGUAGE', 'es'),

'fallback_locale' => 'es',

en el archivo .env remplace DEFAULT_LANGUAGE="en" por DEFAULT_LANGUAGE="es"

al utilizar:

Insertar CODE, HTML o PHP:
{{ $project->Finalize->format('d/m/y') }}

me da error :

Illuminate \ View \ ViewException (E_ERROR)
Call to a member function format() on string (View: C:\xampp\htdocs\free\resources\views\frontend\default\project-single.blade.php)
Previous exceptions

  • Call to a member function format() on string (0)


 

Joao De Sousa

Dseda
Verificado
Verificación en dos pasos activada
Verificado por Whatsapp
¡Ha verificado su Paypal!
Verificado por Binance
Desde
10 Ago 2015
Mensajes
1.219
Si.. obvio dará error, tiene que ser formato fecha para que Laravel lo reconozca. Si vas a trabajar con fechas, es mejor colocarles su formato adecuado.
 

eswal200

Préstamo
Zeta
Verificación en dos pasos activada
Verificado por Whatsapp
Desde
5 Ago 2015
Mensajes
1.591
Si.. obvio dará error, tiene que ser formato fecha para que Laravel lo reconozca. Si vas a trabajar con fechas, es mejor colocarles su formato adecuado.

Ya lo coloque formato de fecha. si me va : {{ $project->Finalize->format('d/m/y') }}


pero sigue en ingles
 

Cerberus

Gamma
Verificación en dos pasos desactivada
Verificado por Whatsapp
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
12 May 2021
Mensajes
190
Por favor, ten en cuenta 📝 que si deseas hacer un trato 🤝 con este usuario, está baneado 🔒.
Hola gente.

Estoy utilizando lo siguiente para mostrar en la viste una fecha:

PHP:
 <h5 class="mb-0 fw-900">{{ date('d M Y',  strtotime($project->Finalize))}} </h5>


Eso me muestra fecha de esta forma: 19 Jan 2021

pero quiero cambiar el mes que esta en ingles a español, el resultado seria: 19 enero 2021

Tienen idea de como puedo hacer esto, tengo rato y no hayo como hacerlo

En un proyecto en laravel

Saludos-
Insertar CODE, HTML o PHP:
<?php setlocale(LC_TIME, 'es_ES'); ?>{{ $post->date->formatLocalized('%a, %b %d, %Y %H:%M') }}
 

eswal200

Préstamo
Zeta
Verificación en dos pasos activada
Verificado por Whatsapp
Desde
5 Ago 2015
Mensajes
1.591
Insertar CODE, HTML o PHP:
<?php setlocale(LC_TIME, 'es_ES'); ?>{{ $post->date->formatLocalized('%a, %b %d, %Y %H:%M') }}


el resultado es el siguiente:

Sat, Jun 12, 2021 18:35

Tamos en las mismas


😭 😭 😭 😭 😭 😭 😭
 

Joao De Sousa

Dseda
Verificado
Verificación en dos pasos activada
Verificado por Whatsapp
¡Ha verificado su Paypal!
Verificado por Binance
Desde
10 Ago 2015
Mensajes
1.219
Ya lo coloque formato de fecha. si me va : {{ $project->Finalize->format('d/m/y') }}


pero sigue en ingles

Pero arriba te coloqué primero como debes imprimirlo si quieres que sea traducido, ese ejemplo es para el formato sin traducir.

{{ $project->Finalize->translatedFormat('d M Y') }}
 

Cerberus

Gamma
Verificación en dos pasos desactivada
Verificado por Whatsapp
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
12 May 2021
Mensajes
190
Por favor, ten en cuenta 📝 que si deseas hacer un trato 🤝 con este usuario, está baneado 🔒.

alfreding0

Curioso
Verificación en dos pasos desactivada
Verificado por Whatsapp
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
19 Nov 2021
Mensajes
1
Solo por mencionar:
Algo que yo suelo utilizar para fechas es sí o sí parsear con Carbon.
En éste ejemplo utilizaré tu variable $project->finalize

PHP:
$fecha = \Carbon\Carbon::parse($project->finalize);
$fechaFinal = $fecha->format('d-M-Y'); //Sin formatear el idioma

// ó de la forma

$fechaFinal = $fecha->translatedFormat('d-M-Y'); //Formateando los nombres de los días o meses según tu configuración de locale app.php
// 'locale' => 'en', //así viene por defecto para inglés
// 'locale' => 'es', //lo modificas así para español


Y si querés utilizar directamente en la vista sería algo como:
PHP:
{{ \Carbon\Carbon::parse($project->finalize)->format('d-M-Y') }}


//ó esta otra para traducir la fecha


{{ \Carbon\Carbon::parse($project->finalize)->translatedFormat('d-M-Y') }}
 
Última edición:

¡Regístrate y comienza a ganar!

Beneficios

  • Gana dinero por participar
  • Gana dinero por recomendarnos
  • Descubre ofertas de empleo diariamente
  • Negocios seguros
  • ¡Información premium y más!

Acceder

¿Ya tienes una cuenta? Accede aquí

Arriba