Detaylı Geçen Süre veya Kalan Süre Hesaplamak

Örneğin

1 yıl 3 ay 2 hafta 1 gün 3 saat 2 dakika 3 saniye

gibi bir çıktı verir.

<?php 
function ne_zaman($zaman,$gecensure=true){//$zaman time() int[11].
    $day = 60 * 60 * 24;//default
if($gecensure==true){//geçenzaman
    $fark = floor(time() - $zaman);//default
}else{//false ise kalanzaman
    $fark = ($zaman - floor(time());
}
$sec = $day / 24 / 60 / 60 ;
$min = $day / 24 / 60 ;
$hour = $day / 24 ;
$day = $day ;
$week = $day * 7 ;
$month = $day * 30 ;
$year = $day * 365 ;
// [ayrışık tam ve detaylı olarak tümünü verir][1 yıl 3 ay 2 hafta 1 gün 3 saat 2 dakika 3 saniye gibi]
if(floor($fark / $year) > 0){$ayear= floor($fark / $year);$fark=$fark -(floor($fark / $year) * $year);}else{$ayear=0;}
if(floor($fark / $month) > 0){$amonth= floor($fark / $month);$fark=$fark -(floor($fark / $month) * $month);}else{$amonth=0;}
if(floor($fark / $week) > 0){$aweek= floor($fark / $week);$fark=$fark -(floor($fark / $week) * $week);}else{$aweek=0;}
if(floor($fark / $day) > 0){$aday= floor($fark / $day);$fark=$fark -(floor($fark / $day) * $day);}else{$aday=0;}
if(floor($fark / $hour) > 0){$ahour= floor($fark / $hour);$fark=$fark -(floor($fark / $hour) * $hour);}else{$ahour=0;}
if(floor($fark / $min) > 0){$amin= floor($fark / $min);$fark=$fark -(floor($fark / $min) * $min);}else{$amin=0;}
if(floor($fark / $sec) > 0){$asec= floor($fark / $sec);$fark=$fark -(floor($fark / $sec) * $sec);}else{$asec=0;}
//print
$print = "";
$ayear > 0 ? $print.=$ayear." yıl ": "";
$amonth > 0 ? $print.=$amonth." ay ": "";
$aweek > 0 ? $print.=$aweek." hafta ": "";
$aday > 0 ? $print.=$aday." gün ": "";
$ahour > 0 ? $print.=$ahour." saat ": "";
$amin > 0 ? $print.=$amin." dakika ": "";
$asec > 0 ? $print.=$asec." saniye ": "";
if($gecensure==true){//geçenzaman
    return $print." önce";
}else{//false ise kalanzaman
    return $print." sonra";
}

 

Stackoverflow Tarzı Aynı Etiketleri Sayarak Yazdırmak

Öncelikle tags isimli bir veritabanınızın olması ve içinde name adlı sütun bulunması gereklidir.

.tag a{
    color: #3e6d8e;
    background-color: #e0eaf1;
    border-bottom: 1px solid #b3cee1;
    border-right: 1px solid #b3cee1;
    padding: 3px 4px 3px 4px;
    margin: 2px 2px 2px 0;
    text-decoration: none;
    font-size: 90%;
    line-height: 1.4;
    white-space: nowrap;
    display: inline-block;
}
<?php  header('Content-Type: text/html; charset=utf-8');
$dbhost     =   "localhost";    
$dbkullanici=   "root";     
$dbsifre    =   "";     
$dbname     =   "test";
$baglan = mysql_connect($dbhost, $dbkullanici, $dbsifre);  
mysql_select_db($dbname, $baglan);
mysql_query("SET NAMES 'utf8'"); 
$result = mysql_query("select name from tags");
$tags = array();
while ($row = mysql_fetch_array($result)) {
$kodlar = "•,-, ,|,>,<,(,),/,≈,",',\,/,[,],{,},*,1,2,3,4,5,6,7,8,9,0,’,“,”,.,:,;,#,$,!,+,%,&,=,?,_,~,¨,´,`,^";
$kodlar=array_filter(explode(",", $kodlar));
$bosalt   =",";
$row[0] = str_replace($kodlar, $bosalt, $row[0]);
        $row_tag_array = @split(",", $row[0]);
        foreach ($row_tag_array as $newtag) {
        asort($row_tag_array);
                if (array_key_exists($newtag, $tags)) {
                        if ($tags[$newtag] < 200) {
                                $tags[$newtag] = $tags[$newtag] + 1;
                        }
                }
                else {
                        $tags[$newtag] = 1;
                }
        }
}
foreach ($tags as $tag => $size) {
    echo '<div class="tag"><a href="http://localhost/search/'.$tag.'.html">'.$tag.'</a><span> x '.$size.'</span>';
}
?>