آژانس هواپیمایی
pop up

مشکل در تابع تاریخ

شروع موضوع توسط علی آبادانی ‏5 می 2008 در انجمن PHP

  1. علی آبادانی

    علی آبادانی Registered User

    تاریخ عضویت:
    ‏30 اکتبر 2006
    نوشته ها:
    897
    تشکر شده:
    11
    محل سکونت:
    Abadan
    با سلام

    دوستان مشکلی در تابع تاریخ بوجود اومده

    این تابع تاریخ من هستش :

    PHP:
    function shdate($atim){
    $y date("Y",$atim);
    $m date("m",$atim);
    $d date("d",$atim);
    switch (
    $m){
    case 
    3:
     if (
    $d >=21){
     
    $rooz $d 20;
     
    $mah 1;
     }else{
     
    $rooz $d 9;
     
    $mah 12;
     }break;
    case 
    4:
     if (
    $d >=22){
     
    $rooz $d 21;
     
    $mah 2;
     }else{
     
    $rooz $d 11;
     
    $mah 1;
     }break;
    case 
    5:
     if (
    $d >=22){
     
    $rooz $d 21;
     
    $mah 3;
     }else{
     
    $rooz $d 10;
     
    $mah 2;
     }break;
    case 
    6:
     if (
    $d >=23){
     
    $rooz $d 22;
     
    $mah 4;
     }else{
     
    $rooz $d 9;
     
    $mah 3;
     }break;
    case 
    7:
     if (
    $d >=23){
     
    $rooz $d 22;
     
    $mah 5;
     }else{
     
    $rooz $d 9;
     
    $mah 4;
     }break;
    case 
    8:
     if (
    $d >=23){
     
    $rooz $d 22;
     
    $mah 6;
     }else{
     
    $rooz $d 9;
     
    $mah 5;
     }break;
    case 
    9:
     if (
    $d >=23){
     
    $rooz $d 22;
     
    $mah 7;
     }else{
     
    $rooz $d 9;
     
    $mah 6;
     }break;
    case 
    10:
     if (
    $d >=23){
     
    $rooz $d 22;
     
    $mah 8;
     }else{
     
    $rooz $d 8;
     
    $mah 7;
     }break;
    case 
    11:
     if (
    $d >=22){
     
    $rooz $d 21;
     
    $mah 9;
     }else{
     
    $rooz $d 9;
     
    $mah 8;
     }break;
    case 
    12:
     if (
    $d >=22){
     
    $rooz $d 21;
     
    $mah 10;
     }else{
     
    $rooz $d 9;
     
    $mah 9;
     }break;
    case 
    1:
     if (
    $d >=21){
     
    $rooz $d 20;
     
    $mah 11;
     }else{
     
    $rooz $d 10;
     
    $mah 10;
     }break;
    case 
    2:
     if (
    $d >=20){
     
    $rooz $d 19;
     
    $mah 12;
     }else{
     
    $rooz $d 11;
     
    $mah 11;
     }break;
    }
    if (
    $m <3)
    $sal $y 622;
    else if (
    $m >3)
    $sal $y 621;
    else if (
    $m == && $d <21)
    $sal $y 622;
    else
    $sal $y 621;
    $shdt $sal.'-'.$mah.'-'.$rooz;
    return 
    $shdt;
    }
    // show persian date with month name
    function farsidate($tm,$lay)
    {
     if (!isset(
    $lay))
      
    $lay 0;
     
    $dt shdate($tm);
     
    $dat explode ('-',$dt);
     
    $year $dat[0];
     
    $month $dat[1];
     
    $day $dat[2];
     
    $today date('sat',$tm);
     switch (
    $month)
     {
      case 
    1:
      
    $mah "فروردين";break;
      case 
    2:
      
    $mah "ارديبهشت";break;
      case 
    3:
      
    $mah "خرداد";break;
      case 
    4:
      
    $mah "تير";;break;
      case 
    5:
      
    $mah "مرداد";break;
      case 
    6:
      
    $mah "شهريور";break;
      case 
    7:
      
    $mah "مهر";break;
      case 
    8:
      
    $mah "آبان";break;
      case 
    9:
      
    $mah "آذر";break;
      case 
    10:
      
    $mah "دي";break;
      case 
    11:
      
    $mah "بهمن";break;
      case 
    12:
      
    $mah "اسفند";break;
     }
     
    $rooz;
     
    $nrooz;
     switch (
    $today)
     {
      case 
    'Sat':
      
    $rooz "شنبه";$nrooz=1;break;
      case 
    'Sun':
      
    $rooz "يكشنبه";$nrooz=2;break;
      case 
    'Mon':
      
    $rooz "دوشنبه";$nrooz=3;break;
      case 
    'Thr':
      
    $rooz "سه شنبه";$nrooz=4;break;
      case 
    'Wed':
      
    $rooz "چهار شنبه";$nrooz=5;break;
      case 
    'Thu':
      
    $rooz "پنج شنبه";$nrooz=6;break;
      case 
    'Fri':
      
    $rooz "جمعه";$nrooz=7;break;  


    از 27 اسفند پارسال یک روز عقب تر رو نشون میده

    مثلاً اگر تاریخ این باشه : یکشنبه 15 اردیبهشت 1387

    نشون میده : یکشنبه 14 اردیبهشت 1387


    ممنون میشم اگر کمکم کنید