Laravel'de Güncel Tarih, Saat, Gün Alma


117

Laravel kullanarak güncel tarihi, saati ve günü almam gerekiyor

Yankılamayı denedim $ldate = new DateTime('today');ve$ldate = new DateTime('now');

Ama her zaman 1 dönüyor.

Larvel'de güncel tarihi, saati, günü nasıl öğrenebilirim


4
Kullanın date(). Kolay şeyleri karmaşıklaştırmaya gerek yok, gereksiz ek yükler ekleyin.
Mārtiņš Briedis

1
Ben asıl sorun yaptığın olduğunu düşünüyorum echo $now = new DateTime();bunun yerine sadece olmadan değişkeni belirlesin oysa echo(yani do $now = new DateTime();) ve daha sonra bunu echo istediğinizde kullanmak gerekir format()yöntemi ( docs ):echo $now->format('Y-m-d');
alexrussell

Yanıtlar:


212

Laravel buna Carbonbağlı bir bağımlılığa sahiptir .

Carbon::now(), Carbon\Carbongerekirse ad alanını ekleyin.

Düzenle (kullanım ve belgeler)

Diyelim ki tarih ve saati almak ve bir dize olarak çıktı almak istiyorum.

$mytime = Carbon\Carbon::now();
echo $mytime->toDateTimeString();

Bu, her zamanki biçiminde çıktı verecektir Y-m-d H:i:s, önceden oluşturulmuş birçok biçim vardır ve Carbon ile PHP tarih saat dizileriyle tekrar uğraşmanız gerekmeyecektir.

Belgeler: https://github.com/briannesbitt/Carbon

Carbon için dize biçimleri: http://carbon.nesbot.com/docs/#api-formatting


4
Carbon \ Carbon kullanın; ad alanı beyanıdır
Kiren Siva

laravel 5'te 2016/2 / 20'den dayname nasıl çıkarılır? lütfen cevap verin
sabin maharjan

6
@AngularAngularAngular KullanımCarbon::now()->format('d-m-Y')
EThaizone Jo

1
Carbon belgelerinizi takip edin. Kimse sizin için kod yazmayacak. Cevap, OP tarafından sorulanları sağlar.
kratos

61

Bunu dene,

$ldate = date('Y-m-d H:i:s');

13
@Chennai "Laravel" yolunu yapmak için neden buna ihtiyacın var? Laravel "php yoludur" :)
Mārtiņš Briedis

3
Tamamen test edilmiş Carbon gibi sınıflara erişiminiz olduğunda, bunları kullanmak her zaman yararlıdır. İhtiyaç duyduklarınızı ve daha fazlasını yapan sağlam bir uygulama varken neden tekerleği yeniden icat edesiniz?
Everon

3
@Everon Yerleşik temel işlevleri kullanmak, tekerleği yeniden icat etmek değildir. İnsanlar her zaman işleri aşırı karmaşık hale getirmek isterler: S
Mārtiņš Briedis

3
Sadece global yapılandırmada doğru zaman dilimini ayarlarsınız ve işte bu, karbonun çalıştığı gibi. Daha süslü göründüğü için işleri "geniş yolla" yapmak aptalca mı? Bu nasıl \Carbon\Carbon::now()->format('d.m.Y');daha iyi date('d.m.Y')?
Mārtiņš Briedis

2
Teşekkürler Yani, date('Y-m-d H:i:s')yine de zarar vermeyecek değil mi?
AngularAngularAngular

51

Php'nin çok iyi çalışan bir tarih işlevi vardır. Laravel ve blade ile bunu çirkin <?phpyankı etiketleri olmadan kullanabilirsiniz . Örneğin, aşağıdakileri bir .blade.phpdosyada kullanıyorum ...

Copyright © {{ date('Y') }}

... ve Laravel / blade bunu cari yıla çeviriyor. Tarih, saat ve gün istiyorsanız, bunun gibi bir şey kullanacaksınız:

{{ date('Y-m-d H:i:s') }}

16

Kullanmak istersen datetime class

$dt = new DateTime();
echo $dt->format('Y-m-d H:i:s');

11

Laravel 5.5'ten sonra güncel tarih ve saati almak için now () fonksiyonunu kullanabilirsiniz.

Blade dosyasında tarih yazdırmak için böyle yazabilirsiniz.

{{  now()->toDateTimeString('Y-m-d') }}

görüntü açıklamasını buraya girin


bu gerçekten soruyu cevaplamıyor, ama bana yardımcı oldu :)
lewis

6

İşte bunu yapmanın başka bir yolu

Use \Carbon\Carbon;

$ tarih = Karbon :: şimdi ();

echo $ tarih-> toRfc850String ();

Çıktı böyle olacak

Saturday, 11-May-19 06:28:04 UTC

4

LARAVEL 5.x İÇİN

Bence bunu arıyordun

$errorLog->timestamps = false;
$errorLog->created_at = date("Y-m-d H:i:s");

3

Bunu deneyebilirsin.

use Carbon\Carbon;

$date = Carbon::now()->toDateTimeString();

3

Ne dersin

    $date = Carbon::now();
    return $date->toArray();

sana vereceğim

{
  "yıl": 2019,
  "ay": 1,
  "gün": 27,
  "dayOfWeek": 0,
  "dayOfYear": 26,
  "saat": 10,
  "dakika": 28,
  "ikinci": 55,
  "englishDayOfWeek": "Pazar",
  "mikro": 967721,
  "zaman damgası": 1548570535,
  "biçimlendirilmiş": "2019-01-27 10:28:55",
  "saat dilimi": {
    "timezone_type": 3,
    "timezone": "Asya / Dubai"
  }
}

Aynı aksesuarlara şu yolla erişilebilir:

    dönüş [
             'tarih' => $ tarih-> biçim ('Ym-g'),
              'yıl' => $ tarih-> yıl,
              'ay' => $ tarih-> ay,
              'gün' => $ tarih-> gün,
              'saat' => $ tarih-> saat,
              'Cumartesi' => $ tarih-> Cumartesi (),
          ];




0
//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);

    }


}

0

Sağlayıcı Klasöründe AppServicesProvider'da saat dilimini ayarlayabilirsiniz

public function boot()
{
    Schema::defaultStringLength(191);
    date_default_timezone_set('Africa/Lagos');
}

ve sonra use Import Carbon\Carbon ve basitçe use Carbon::now()// Geçerli saati almak için, biçimlendirmeniz gerekiyorsa, tercihlerinize bağlı olarak daha fazla seçenek için belgelerine bakın buraya bağlantı açıklamasını girin


0

Bugünün tarihini istiyorsan

ad alanı kullan

use Carbon\Carbon as time;

kod

 $mytime=time::now();
 $date=$mytime->toRfc850String();
 $today= substr($date, 0, strrpos($date, ","));
 dd($today)

çıktı , "Sunday"


-1

$ dayOfYear = bugün () -> dayOfYear; $ dayOfWeek = bugün ('Avrupa / Londra') -> haftanın günü;

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.