I need to get the current date, time, and day using Laravel.
I tried to echo $ldate = new DateTime('today');
and $ldate = new DateTime('now');
But it is always returning 1.
How can I get the current date, time, and day?
I need to get the current date, time, and day using Laravel.
I tried to echo $ldate = new DateTime('today');
and $ldate = new DateTime('now');
But it is always returning 1.
How can I get the current date, time, and day?
Laravel has the Carbon
dependency attached to it.
Carbon::now()
, include the Carbon\Carbon
namespace if necessary.
Edit (usage and docs)
Say I want to retrieve the date and time and output it as a string.
$mytime = Carbon\Carbon::now();
echo $mytime->toDateTimeString();
This will output in the usual format of Y-m-d H:i:s
, there are many pre-created formats and you will unlikely need to mess with PHP date time strings again with Carbon.
Documentation: https://github.com/briannesbitt/Carbon
String formats for Carbon: http://carbon.nesbot.com/docs/#api-formatting
Carbon::now()->format('d-m-Y')
–
Suffer Try this,
$ldate = date('Y-m-d H:i:s');
date
returns a string, there are core functions too allow parsing of the string but why limit yourself in that way in terms of flexibility? Check out the Carbon docs. –
Gascon \Carbon\Carbon::now()->format('d.m.Y');
better than date('d.m.Y')
? –
Tadeas date('Y-m-d H:i:s')
won't hurt by anyway right ? –
Glennglenna Php has a date function which works very well. With laravel and blade you can use this without ugly <?php
echo tags. For example, I use the following in a .blade.php
file...
Copyright © {{ date('Y') }}
... and Laravel/blade translates that to the current year. If you want date time and day, you'll use something like this:
{{ date('Y-m-d H:i:s') }}
If you want to use datetime
class do:
$dt = new DateTime();
echo $dt->format('Y-m-d H:i:s');
The documentation for reference.
From Laravel 5.5 you can use now() function to get the current date and time.
In blade file, you can write like this to print date.
{{ now()->toDateTimeString('Y-m-d') }}
For more information check doc
Here is another way to do this
Use \Carbon\Carbon;
$date = Carbon::now();
echo $date->toRfc850String();
Output will be like this
Saturday, 11-May-19 06:28:04 UTC
How about
$date = Carbon::now();
return $date->toArray();
will give you
{ "year": 2019, "month": 1, "day": 27, "dayOfWeek": 0, "dayOfYear": 26, "hour": 10, "minute": 28, "second": 55, "englishDayOfWeek": "Sunday", "micro": 967721, "timestamp": 1548570535, "formatted": "2019-01-27 10:28:55", "timezone": { "timezone_type": 3, "timezone": "Asia/Dubai" } }
The same props are accessible through
return [ 'date' => $date->format('Y-m-d'), 'year' => $date->year, 'month' => $date->month, 'day' => $date->day, 'hour' => $date->hour, 'isSaturday' => $date->isSaturday(), ];
FOR LARAVEL 5.x
I think you were looking for this
$errorLog->timestamps = false;
$errorLog->created_at = date("Y-m-d H:i:s");
You can try this.
use Carbon\Carbon;
$date = Carbon::now()->toDateTimeString();
I prefer to use a built-in PHP function. if you want to get timestamp format such as "2021-03-31" you can write code like this
$date = date('Y-m-d', time());
for the time you can write like this
$date = date('H:i:s', time());
for the day you can write like this
$date = date('l', time()); // lowercase of L
function time()
will give you the current UNIX time and you convert it to whatever format you need.
So, you don't need any third-party package anymore :)
You can read more about UNIX time in this Wikipedia page and convert it in this webiste
Last, for the formatting, you can visit the w3schools page.
I use now()
on laravel 8 to create a user
User::create([
'name'=>'admin',
'email'=>'[email protected]',
'email_verified_at'=>now(),
'password'=>bcrypt('123456'),
]);
data
return now()->toDateString();
Time
return now()->toTimeString();
now()->getTimestamp()
also working –
Herminahermine You have a couple of helpers.
The helper now() https://laravel.com/docs/7.x/helpers#method-now
The helper now() has an optional argument, the timezone. So you can use now:
now();
or
now("Europe/Rome");
In the same way you could use the helper today() https://laravel.com/docs/7.x/helpers#method-today. This is the "same thing" of now() but with no hours, minutes, seconds.
At the end, under the hood they use Carbon as well.
Try this,
$tmp = (new DateTime)->format('d-m-Y');
echo $tmp;
to Timestamp.
$kTsp = (new DateTime)->getTimestamp();
echo $kTsp;
It's very simple:
Carbon::now()->toDateString()
This will give you a perfectly formatted date string such as 2020-10-29.
In Laravel 5.5 and above you can use now()
as a global helper instead of Carbon::now()
, like this:
now()->toDateString()
Laravel Blade View:
{{\Carbon\Carbon::now()->format('d-m-Y')}}
With timezone:
{{\Carbon\Carbon::now("Asia/Tokyo")->format('d-m-Y')}}
Format available list: https://www.php.net/manual/en/datetime.format.php
Timezone available list: https://www.php.net/manual/en/timezones.php
If you need the date directly in a input value of your view this can help you: (myview .blade.php)
<input type="date" name="Date" value="{{date('Y-m-d', time())}}">
//vanilla php
Class Date {
public static function date_added($time){
date_default_timezone_set('Africa/Lagos');//or choose your location
return date('l F Y g:i:s ',$time);
}
}
You can set the timezone on you AppServicesProvider in Provider Folder
public function boot()
{
Schema::defaultStringLength(191);
date_default_timezone_set('Africa/Lagos');
}
and then use Import Carbon\Carbon
and simply use Carbon::now()
//To get the current time, if you need to format it check out their documentation for more options based on your preferences enter link description here
You can use today()
function.
$today = today('Europe/London');
$dayOfYear = $today->dayOfYear;
$dayOfWeek = $today->dayOfWeek;
today data and time
return now::();
time
return now()->toTimeString();
© 2022 - 2024 — McMap. All rights reserved.
echo $now = new DateTime();
whereas instead you should just set the variable without theecho
(i.e. do$now = new DateTime();
) and then when you want to echo it you need to use theformat()
method (docs):echo $now->format('Y-m-d');
– Winwaloe