/
  • مشکل در تاریخ شمسی

  • ارسال پاسخ   امتیاز موضوع:
    • 1 رأی - میانگین امیتازات: 1
    • 1
    • 2
    • 3
    • 4
    • 5

    حالت موضوعی | حالت خطی مشکل در تاریخ شمسی
    نویسنده پیام
    pesarelor آفلاین
    عضو جدید
    **

    ارسال‌ها: 24
    تاریخ عضویت: ۱۳۸۸ مهر ۲۶
    اعتبار: 0
    تشکرها : 5
    ( 9 تشکر در 3 ارسال )
    ارسال: #1
    مشکل در تاریخ شمسی
    من برای درج تاریخ شمسی از فایل پیوستی استفاده میکنم ولی نمیدونم چرا ساعت 00:00:01 رو دو روز میندازه جلو یا یه ساعت جلو تر از ساعت کشور هست ؟ یا ..
    درخواست کلاس یا تابع درست pdate) jdate) رو دارم.


    فایل‌(های) پیوست شده
    .php  pdate.php (اندازه: 14.71 KB / تعداد دفعات دریافت: 5)
    __________________________________________________________________________
    طراحی و برنامه نویسی صفحات پویا - Iranveb.net
    پورتال جدیدترین اخبار داخل و خارج کشور - Iranveb.com
    (آخرین ویرایش در این ارسال: ۱۳۸۸ آبان ۱۴ ۰۱:۱۱ صبح، توسط pesarelor.)
    ۱۳۸۸ آبان ۱۴ ۰۱:۰۷ صبح
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط :
    admin آفلاین
    وحید سهرابلو
    **********

    ارسال‌ها: 5,734
    تاریخ عضویت: ۱۳۸۷ آذر ۲۴
    اعتبار: 100
    تشکرها : 1362
    ( 6196 تشکر در 3438 ارسال )
    ارسال: #2
    RE: مشکل در تاریخ شمسی
    لطفا تابعی برای مثال از استفاده از اون بکید تا تست کنم
    ۱۳۸۸ آبان ۱۴ ۰۵:۲۳ عصر
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط :
    pesarelor آفلاین
    عضو جدید
    **

    ارسال‌ها: 24
    تاریخ عضویت: ۱۳۸۸ مهر ۲۶
    اعتبار: 0
    تشکرها : 5
    ( 9 تشکر در 3 ارسال )
    ارسال: #3
    RE: مشکل در تاریخ شمسی
    بر روی هاست با این فایلی که پیوست کردم خروجی این کد چنین شد:
    کد PHP:
    <?php
    echo pdate('H:i:s A').'<br/>';
    echo 
    date('H:i:s A');
    ?>
    خروجی :
    کد PHP:
    14:11:27 بعد از ظهر
    14
    :11:27 PM 
    و با http://ospdev.net/frs/mirror.php?id=17
    چنین شد:
    کد PHP:
    <?php
    echo pdate('H:i:s A').'<br/>';
    echo 
    date('H:i:s A');
    ?>
    خروجی :
    کد:
    03:17:27 قبل‏ازظهر
    15:17:27 PM
    __________________________________________________________________________
    طراحی و برنامه نویسی صفحات پویا - Iranveb.net
    پورتال جدیدترین اخبار داخل و خارج کشور - Iranveb.com
    (آخرین ویرایش در این ارسال: ۱۳۸۸ آبان ۲۰ ۱۲:۵۲ صبح، توسط pesarelor.)
    ۱۳۸۸ آبان ۲۰ ۱۲:۵۱ صبح
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط :
    admin آفلاین
    وحید سهرابلو
    **********

    ارسال‌ها: 5,734
    تاریخ عضویت: ۱۳۸۷ آذر ۲۴
    اعتبار: 100
    تشکرها : 1362
    ( 6196 تشکر در 3438 ارسال )
    ارسال: #4
    RE: مشکل در تاریخ شمسی
    در مورد اون pdate که از نشانی دیگه هست اطلاعی ندارم
    نسخه ۱.۱ رو همین الان به روز کردم
    http://iranphp.org/node/6
    می تونید دانلود و ازش استفاده کنید و مشکلی رو فعلا نداشته
    در صورتی که مشکلی رو داشت بهم اطلاع بدید
    ۱۳۸۸ آبان ۲۰ ۰۱:۰۱ عصر
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط : zoghal pesarelor HiddeN
    pesarelor آفلاین
    عضو جدید
    **

    ارسال‌ها: 24
    تاریخ عضویت: ۱۳۸۸ مهر ۲۶
    اعتبار: 0
    تشکرها : 5
    ( 9 تشکر در 3 ارسال )
    ارسال: #5
    RE: مشکل در تاریخ شمسی
    یه سوال داشتم.ساعت جهانی که مبداش گرینویچ هست همیشه ثابت هست ؟منظورم چیزی بهش کم و زیاد نمیشه ؟
    خب اگه اینطوری باشه با اضافه کردن 30600 به time() دقیقا ساعت و روز و... ایران بدست میاد.
    کد PHP:
    function jalali_to_gregorian($j_y$j_m$j_d

        
    $g_days_in_month = array(312831303130313130313031); 
        
    $j_days_in_month = array(313131313131303030303029);
        
       

       
    $jy $j_y-979
       
    $jm $j_m-1
       
    $jd $j_d-1

       
    $j_day_no 365*$jy div($jy33)*div($jy%33+34); 
       for (
    $i=0$i $jm; ++$i
          
    $j_day_no += $j_days_in_month[$i]; 

       
    $j_day_no += $jd

       
    $g_day_no $j_day_no+79

       
    $gy 1600 400*div($g_day_no146097); /* 146097 = 365*400 + 400/4 - 400/100 + 400/400 */ 
       
    $g_day_no $g_day_no 146097

       
    $leap true
       if (
    $g_day_no >= 36525/* 36525 = 365*100 + 100/4 */ 
       

          
    $g_day_no--; 
          
    $gy += 100*div($g_day_no,  36524); /* 36524 = 365*100 + 100/4 - 100/100 */ 
          
    $g_day_no $g_day_no 36524

          if (
    $g_day_no >= 365
             
    $g_day_no++; 
          else 
             
    $leap false
       } 

       
    $gy += 4*div($g_day_no1461); /* 1461 = 365*4 + 4/4 */ 
       
    $g_day_no %= 1461

       if (
    $g_day_no >= 366) { 
          
    $leap false

          
    $g_day_no--; 
          
    $gy += div($g_day_no365); 
          
    $g_day_no $g_day_no 365
       } 

       for (
    $i 0$g_day_no >= $g_days_in_month[$i] + ($i == && $leap); $i++) 
          
    $g_day_no -= $g_days_in_month[$i] + ($i == && $leap); 
       
    $gm $i+1
       
    $gd $g_day_no+1

       return array(
    $gy$gm$gd); 

    پس اینا چی هستن ؟
    __________________________________________________________________________
    طراحی و برنامه نویسی صفحات پویا - Iranveb.net
    پورتال جدیدترین اخبار داخل و خارج کشور - Iranveb.com
    ۱۳۸۸ آبان ۲۱ ۱۱:۵۱ صبح
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط :
    admin آفلاین
    وحید سهرابلو
    **********

    ارسال‌ها: 5,734
    تاریخ عضویت: ۱۳۸۷ آذر ۲۴
    اعتبار: 100
    تشکرها : 1362
    ( 6196 تشکر در 3438 ارسال )
    ارسال: #6
    RE: مشکل در تاریخ شمسی
    ساعت گرینویچ یه چیز ثابت هست.
    به دلیل اینکه تابع pdate (که توسط iranphp.org ارائه شده )از خود تابع date استفاده می کنه از نظر منطقه زمانی دو تاش از نظر زمانی یه خروجی رو میدن
    اینکه منطقه زمانی سرور روی چی تنظیم هست روی خروجی تایع date و pdate تاثیر میزاره
    برای تنظیم دستی منطقه زمانی متونی از تابع خود php استفاده کنی
    http://ir.php.net/manual/en/function.dat...ne-set.php
    اون چیزی هم که گفتی چیا هستن تنها تاریخ رو تبدیل می کنه
    (آخرین ویرایش در این ارسال: ۱۳۸۸ آبان ۲۱ ۱۲:۲۳ عصر، توسط admin.)
    ۱۳۸۸ آبان ۲۱ ۱۲:۲۳ عصر
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط : oia pesarelor
    « قدیمی تر | تازه‌ تر »

    ارسال پاسخ
    پرش به انجمن:


    کاربرانِ درحال بازدید از این موضوع: 1 مهمان
    IranPHP.org | تماس با ما | بازگشت به بالا | بازگشت به محتوا | بایگانی | پیوند سایتی RSS