Şimdi Ara

[Soru] PHP ile saniye ve milisaniye gizlieme

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
3 Misafir - 3 Masaüstü
5 sn
5
Cevap
0
Favori
453
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Sql server içide bir tablo içinde "CreationTime" adında bir kolonum var. Bu kolon içinde zaman girdileri var.Zamanlar Ay Gün Yıl Saat Dakika Saniye Salise olarak gözüküyor. Örnek satır : Feb 20 2018 06:12:04:873 Sitede bir php kodu kullanıyorum kulllanıcıların ne zaman kayıt olduğunu göstermek için. Kodum aşağıdaki şekilde

    $userdata["createtime"] = $row["CreateTime"]


    Site bu kodu Feb 20 2018 06:12:04:873AM olarak gösteriyor. Ben sitede saniye ve salisenin gözükmesini istemiyorum o yüzden $row["CreateTime"] kısmında biraz düzenleme yapmam lazım. strtotime fonksiyonunu denedim salise olduğu için unix dönüşümü yapamadım. Bana 1 ocak 1970 i gösterdi. Başka birkaç fonksiyon daha denedim ama ne yaptıysam saniye ve saliseyi gizleyemedim. Sadece şu şekilde gözükmesini istiyorum. Feb 20 2018 06:12

    Nasıl birşey yapabilirim ? linux kullanıyorum php versiyonu 5.2.17







  • Sadece fikir vermesi açısından söylüyorum. Dediğin olayı regexp ile yapmak mümkün. "Düzenli ifade" olarak da geçiyor. Kendim epeydir düzenli ifadelerle uğraşmadığım için nasıl bir tanımlama yapmak gerekiyor ben de unuttum. Son : işaretinden kısmından öncesini çıkarıp alacaksın. Küçük bir araştırmayla halledilebilir.

    2. çözüm olarak string türündeki Feb 20 2018 06:12:04:873AM ifadesinde PHP'nin explode fonksiyonu kullanarak her : ile ayrılan kısmını diziye parçalayabilirsin. Örneğin:

    $time = explode(':', 'Feb 20 2018 06:12:04:873AM');
    $time2 = $time[0] . ':' . $time[1];

    $time2 değişkeninin çıktısı Feb 20 2018 06:12 olacaktır. explode fonksiyonunun içine kendi değişkenini koyman gerekir.
  • quote:

    Orijinalden alıntı: Revolution

    Sadece fikir vermesi açısından söylüyorum. Dediğin olayı regexp ile yapmak mümkün. "Düzenli ifade" olarak da geçiyor. Kendim epeydir düzenli ifadelerle uğraşmadığım için nasıl bir tanımlama yapmak gerekiyor ben de unuttum. Son : işaretinden kısmından öncesini çıkarıp alacaksın. Küçük bir araştırmayla halledilebilir.

    2. çözüm olarak string türündeki Feb 20 2018 06:12:04:873AM ifadesinde PHP'nin explode fonksiyonu kullanarak her : ile ayrılan kısmını diziye parçalayabilirsin. Örneğin:

    $time = explode(':', 'Feb 20 2018 06:12:04:873AM');
    $time2 = $time[0] . ':' . $time[1];

    $time2 değişkeninin çıktısı Feb 20 2018 06:12 olacaktır. explode fonksiyonunun içine kendi değişkenini koyman gerekir.


    $userdata["createtime"] = explode(":",$row["CreateTime"]);
    $userdata2["createtime"] = $userdata["createtime"][0] . ':' . $userdata["createtime"][1];

    Bu şekilde yaptım kodu ve çalıştı. İstediğim gibi Feb 20 2018 06:12 cevabını alıyorum.
    Çok sağol. 2 gündür uğraşıyorum son çare buraya yazayım dedim. Kod dilinden anlamıyorum.Amatör oluca böyle şeyler çok vakit alıyor.

    Acaba bunu tek satırda yazmanın bir yolu varmı ? Bu fonksiyonları iç içe geçirmeyi deneyeceğim normalde çalışması gerekir ama emin değilim.

    Örnek olarak demek istediğim
    $time = explode(':', 'Feb 20 2018 06:12:04:873AM');
    $time2 = $time[0] . ':' . $time[1];

    burda $time2 yazmak yerine yine $time olarak cevap almaya çalışmak. $time[0] . ':' . $time[1]; kodunu bir üst satıra entegre etmeye çalışmak gibi birşey.




  • Wade W kullanıcısına yanıt
    Ben orada farklı bir değişken ismi olarak $time2 kullandım ama tekrardan eski değişken olan $time ın üzerine yazılabilir 2. satırda. Ayrı bir değişken ismi kullanmayabilirsin. $userdata2 gibi ayrı bir değişen kullanmak istemiyorsun anladığım kadarıyla. $userdata2 yazdığın yere tekrar $userdata yazabilirsin.

    < Bu ileti mini sürüm kullanılarak atıldı >
  • $userdata["createtime"] = substr($row["CreateTime"], 0, strrpos( $row["CreateTime"], ':') );

    < Bu ileti DH mobil uygulamasından atıldı >
  • Yapay Zeka’dan İlgili Konular
    Daha Fazla Göster
    
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.