نمایش نتایج: از شماره 1 تا 2 , از مجموع 2

موضوع: نمایش تاریخ انتشار نوشته به شکل "10 دقیقه پیش"

Threaded View

پست قبلی پست قبلی   پست بعدی پست بعدی
  1. #2
    عضو جدید realAmir آواتار ها
    تاریخ عضویت
    Feb 2017
    نوشته ها
    17
    تشکر تشکر کرده 
    1
    تشکر تشکر شده 
    25
    تشکر شده در
    12 پست

    پیش فرض پاسخ : نمایش تاریخ انتشار نوشته به شکل "10 دقیقه پیش"

    میتونید با چند عملیات ریاضی و تابع round در PHP این کار رو انجام بدید.
    به این شکل که تاریخ فعلی (این لحظه) رو از تاریخ مورد نظر کم میکنید و با تابع round به مقیاس ثانیه واحد مورد نظر (مثلا دقیقه برابر 60، یا ساعت برابر 3600) رند میکنید و با چند if این ها رو به حروف تبدیل میکنید.
    این تابع خلاصه و انجام شده چیزی هستش که گفتم:
    کد PHP:
    <?php
    function ago_time($time_ago){
    $cur_time     time();
    $time_elapsed     $cur_time $time_ago;
    $seconds     $time_elapsed ;
    $minutes     round($time_elapsed 60 );
    $hours         round($time_elapsed 3600);
    $days         round($time_elapsed 86400 );
    $weeks         round($time_elapsed 604800);
    $months     round($time_elapsed 2600640 );
    $years         round($time_elapsed 31207680 );
    // Seconds
    if($seconds <= 60){
    return 
    "$seconds ثانیه قبل";
    }
    //Minutes
    else if($minutes <=60){
    if(
    $minutes==1){
    return 
    "یک ماه پیش";
    }else{
    return 
    "$minutes دقیقه قبل";
    }
    }
    //Hours
    else if($hours <=24){
    if(
    $hours==1){
    return 
    "یک ساعت قبل";
    }else{
    return 
    "$hours ساعت قبل";
    }
    }
    //Days
    else if($days <= 7){
    if(
    $days==1){
    return 
    "دیروز";
    }else{
    return 
    "$days روز قبل";
    }
    }
    //Weeks
    else if($weeks <= 4.3){
    if(
    $weeks==1){
    return 
    "یک هفته پیش";
    }else{
    return 
    "$weeks هفته پیش";
    }
    }
    //Months
    else if($months <=12){
    if(
    $months==1){
    return 
    "یک ماه پیش";
    }else{
    return 
    "$months ماه پیش";
    }
    }
    //Years
    else{
    if(
    $years==1){
    return 
    "یک سال پیش";
    }else{
    return 
    "$years سال پیش";
    }
    }
    }
    ?>
    و برای استفاده میتونید تابع رو با یک ورودی تاریخ مورد نظر استفاده کنید (متغیر time رو در کد باید تعریف کنید که برابر تاریخ مبدا هستش)
    کد PHP:
    echo ago_time($time); 
    ویرایش توسط realAmir : June 12th, 2017 در ساعت 10:48

  2. تعداد تشکر ها ازrealAmir به دلیل پست مفید


اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

موضوعات مشابه

  1. پاسخ ها: 0
    آخرين نوشته: June 21st, 2016, 05:20
  2. پاسخ ها: 0
    آخرين نوشته: November 18th, 2013, 00:32
  3. پاسخ ها: 8
    آخرين نوشته: April 9th, 2013, 22:12
  4. پاسخ ها: 16
    آخرين نوشته: December 3rd, 2011, 19:33

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •