• 12-05-2016, 12:26:02
    #1
    Merhaba,

    İnternette kaynak bulamadım belki de çok basit.

    Şöyle bir çalışmaya ihtiyacım var.

    Bu site 15 gün / 24 saat / 35 dakikadır aktif.

    Bir başlangıç tarihim olacak ve sonrasında sürekli tarih kendisini yenileyecek. Örnek yukarıdaki gibidir.

    Teşekkürler.
  • 12-05-2016, 15:22:15
    #2
    bu gün imdadına ben yetiştim.

    http://www.erbilen.net/x-zaman-once-yazildi-fonksiyonu/
  • 12-05-2016, 15:56:34
    #3
    Big_Turk adlı üyeden alıntı: mesajı görüntüle
    Maalesef istediğim gibi değil

    Çıktıyı doğru vermiyor. Saat ve dakika formatları bozuk çıkıyor. zaten kendi web sayfasında da belirtmiş arkadaş.

    Yine de teşekkür ederim.
  • 13-05-2016, 19:41:47
    #4
    Sorun tam olarak nedir açarsan daha hızlı cevap alabilirsin.
    Verdiğim kod işinizi görecektir.

    <?php 
    header('Content-Type: text/html; charset=utf-8');
    
    class DateAgo {
    	
    	public $date;
    
    	public function ago() 
    	{
    	    $now = new DateTime;
    	    $ago = new DateTime($this->date);
    	    $diff = $now->diff($ago);
    
    	    $diff->w = floor($diff->d / 7);
    	    $diff->d -= $diff->w * 7;
    
    	    $string = array(
    	        'y' => 'yıl',
    	        'm' => 'ay',
    	        'w' => 'hafta',
    	        'd' => 'gün',
    	        'h' => 'saat',
    	        'i' => 'dakika',
    	        's' => 'saniye',
    	    );
    	    foreach ($string as $k => &$v) 
    	    {
    	        if ($diff->$k) {
    	            $v = $diff->$k . ' ' . $v . ($diff->$k > 1 ? '' : '');
    	        } else {
    	            unset($string[$k]);
    	        }
    	    }
    	    return $string ? implode(', ', $string) . ' önce' : 'şimdi';
    	}
    }
    
    $ago = new DateAgo();
    $ago->date = "12.05.2016 18:20:50";
    echo $ago->ago();
  • 14-05-2016, 20:02:24
    #5
    codefix adlı üyeden alıntı: mesajı görüntüle
    Sorun tam olarak nedir açarsan daha hızlı cevap alabilirsin.
    Verdiğim kod işinizi görecektir.

    <?php 
    header('Content-Type: text/html; charset=utf-8');
    
    class DateAgo {
    	
    	public $date;
    
    	public function ago() 
    	{
    	    $now = new DateTime;
    	    $ago = new DateTime($this->date);
    	    $diff = $now->diff($ago);
    
    	    $diff->w = floor($diff->d / 7);
    	    $diff->d -= $diff->w * 7;
    
    	    $string = array(
    	        'y' => 'yıl',
    	        'm' => 'ay',
    	        'w' => 'hafta',
    	        'd' => 'gün',
    	        'h' => 'saat',
    	        'i' => 'dakika',
    	        's' => 'saniye',
    	    );
    	    foreach ($string as $k => &$v) 
    	    {
    	        if ($diff->$k) {
    	            $v = $diff->$k . ' ' . $v . ($diff->$k > 1 ? '' : '');
    	        } else {
    	            unset($string[$k]);
    	        }
    	    }
    	    return $string ? implode(', ', $string) . ' önce' : 'şimdi';
    	}
    }
    
    $ago = new DateAgo();
    $ago->date = "12.05.2016 18:20:50";
    echo $ago->ago();
    Tam istediğim gibi. Teşekkürler.
  • 14-05-2016, 20:19:04
    #6
    scout adlı üyeden alıntı: mesajı görüntüle
    Tam istediğim gibi. Teşekkürler.
    rica ederim iyi çalışmalar.