یکشنبه ۲۷ خرداد ۱۴۰۳

Sunday, June 16, 2024 GMT +3:30

کار با متد getElementById و innerHTML در جاوا اسکریپت (JavaScript)

javascript-getelement-inner

معمولا در زبان های برنامه نویسی مختلف، برخی خاصیت ها و متدها بیشتر از سایر موارد به کار می روند که می توان اصطلاح متدهای پرکاربرد را برای آنها به کار برد، در کدنویسی با جاوا اسکریپت، دو متد پرکاربرد getElementById و innerHTML جزء برجسته ترین این موارد هستند، البته عبارت متد (Method) بیشتر در برنامه نویسی شی گرا (OOP یا Object Oriented Programming) کاربرد دارد و مواردی مانند innerHTML را خاصیت (Property) می نامند، با این وجود و به جهت اینکه این موضوع (OOP) در جاوا اسکریپت چندان مصداق ندارد، به اختصار و در این آموزش به هر دو، متد خواهیم گفت، به هر صورت برای آشنایی بیشتر و جهت تکمیل دانستنی هایی که تا این لحظه آموخته ایم، با ادامه مطلب همراه ما باشید.

متد getElementById


از getElementById در جاوا اسکریپت برای تعیین یک مرجع (reference) به یک عنصر (element) با توجه به ID آن استفاده می شود، به زبان ساده یعنی انتخاب یک عنصر HTML (به فرض تگ div) با توجه به ID آن، به طور مثال اگر بخواهیم مقادیر value یک input را با توجه به ID آن استخراج کنیم، خواهیم نوشت:
<input id="test" type="text" value="1">
<script type="text/javascript">
var input = document.getElementById('test').value;
alert(input);
</script>
نکته 1: همان طور که در مثال بالا مشخص است، متد getElementById خود وابسته به شی (object) دیگری به نام document است، لذا الزاما باید به همراه آن استفاده شود.
نکته 2: متد getElementById نسبت به بزرگ یا کوچک بودن مقادیر ID حساس است، به طور مثال Id با id در این متد دو مقدار متفاوت هستند.
نکته 3: در هنگام استفاده از متد getElementById دقت کنید که تگ مورد نظر پیش از فراخوانی، در دسترس قرار گرفته باشد، به عبارت دیگر ابتدا باید تگ مورد نظر توسط مرورگر (و بر اساس ساختار DOM یا نمودار درختی تگ ها از بالاترین قسمت صفحه به پائین) پردازش شود و سپس بتوان عملیاتی روی آن انجام داد، به فرض حالت زیر اشتباه است و خطای TypeError: document.getElementById(...) is null را دریافت خواهید کرد.
<script type="text/javascript">
var input = document.getElementById('test').value;
alert(input);
</script>
<input id="test" type="text" value="1">
علت خطا در مثال بالا این است که پیش از پردازش تگ input مورد نظر، آن را در دستورات جاوا اسکریپت فراخوانی کرده ایم، در صورت نیاز می توانید این مشکل را با استفاده از window.onload (این رویداد زمانی اجرا می شود که صفحه به طور کامل بارگذاری شده باشد) برطرف کنید:
<script type="text/javascript">
window.onload = function(){
    var input = document.getElementById('test').value;
    alert(input);
}
</script>
<input id="test" type="text" value="1">

متد innerHTML


از innerHTML در جاوا اسکریپت برای دریافت یک مقدار از درون تگ های HTML یا اختصاص دادن یک مقدار به تگ ها و تغییر محتوای آنها استفاده می شود، به مثال زیر توجه کنید.
<script type="text/javascript">
function SetValue(id){
    var element = document.getElementById(id);
    //دریافت مقادیر از عنصر مورد نظر
    var value = element.innerHTML;
    alert(value);
}
</script>
<input type="button" onclick="SetValue('result');" value="کلیک کنید">
<div id="result">این یک تست است</div>
همان طور که اشاره شد، کاربرد innerHTML محدود به دریافت یک مقدار نیست و می توان برای اختصاص مقادیر به عناصر HTML از آن استفاده کرد، به مثال زیر توجه کنید.
<script type="text/javascript">
function SetValue(id, value){
    var element = document.getElementById(id);
    //اختصاص مقدار به عنصر مورد نظر
    element.innerHTML = value;
}
</script>
<input type="button" onclick="SetValue('result', 'این یک تست است');" value="کلیک کنید">
<div id="result"></div>
نکته 1: همان طور که ملاحظه می کنید innerHTML وابسته به متد و آبجکت پیش از خود (document و getElementById) است.
نکته 2: استفاده از متد innerHTML برای تغییر محتوای یک عنصر والد (parent) باعث حذف تگ های فرزند (child) آن نیز می شود، به فرض اگر درون تگ div از چند تگ تو در تو استفاده شده باشد، با به کار بردن innerHTML برای تگ والد، محتوای آن هر چه باشد (شامل تگ های div تو در تو) حذف و با مقادیر جدید جایگزین می شود.
نکته 3: برای دریافت مقادیر از تگ input یا تغییر محتوای آن، باید از متد value به جای innerHTML استفاده شود.

مثال و پیش نمایش آنلاین


برای آشنایی بیشتر با کاربردهای getElementById و innerHTML در جاوا اسکریپت، چند مثال کاربردی را همراه با پیش نمایش آنلاین در زیر بررسی می کنیم.
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>وبگو | کاربرد متد getElementById و innerHTML</title>
<!-- https://webgoo.ir -->
<style type="text/css">
body{
    font-family:Tahoma, Geneva, sans-serif;
    font-size:12px;
    direction:rtl;
    line-height:20px;
}
#text-box{
    padding:6px;
    background:#CCC;
}
#test-block{
    padding:6px;
    background:#CCF;
    cursor:pointer;    
}
</style>
</head>
<body>
<noscript>
جاوا اسکریپت در مرورگر شما غیر فعال است یا پشتیبانی نمی شود!<br>
</noscript>

<input id="test" type="text" value="یک مقدار وارد کنید">
<input type="button" value="کلیک کنید" onclick="AlertValue('test');">
<script type="text/javascript">
function AlertValue(id){
    var value = document.getElementById(id).value;
    alert(value);
}
</script>
<br><br>
آرگومان متد getElementById همان id عنصر HTML مورد نظر است.
<hr><br>
<div id="text-box">پس از کلیک بر روی دکمه تغییر رنگ و اجرای تابع ChangeColor، با استفاده از متد getElementById و style رنگ پس زمینه این بلاک تغییر می کند!</div><br>
<input type="button" value="تغییر رنگ" onclick="ChangeColor('text-box');">
<input type="button" value="رنگ پیش فرض" onclick="DefaultColor('text-box');">
<script type="text/javascript">
function ChangeColor(id){
    var block = document.getElementById(id);
    block.style.backgroundColor = "#FC0";        
}
function DefaultColor(id){
    var block = document.getElementById(id);
    block.style.backgroundColor = "#CCC";        
}
</script>
<hr><br>
<input id="text-input" type="text" onkeyup="InnerChange(this.id);"><br>
<div id="inner-text"></div>
<script type="text/javascript">
function InnerChange(id){
    var element = document.getElementById(id);
    var value = element.value;
    document.getElementById('inner-text').innerHTML = value;
}
</script>
<br><br>
پس از تایپ عبارت در فیلد بالا، رویداد onkeyup اجرا شده و تابع InnerChange فراخوانی می شود، در این مثال از متد innerHTML استفاده کرده ایم.<br>
نکته: با استفاده از عبارت کلیدی this.id می توانید به صورت خودکار id بلاک یا تگ input مورد نظر را به کدهای خود بدهید.
<hr><br>
<div id="test-block" onclick="GetText(this.id);">این یک متن آزمایشی است!</div>
<script type="text/javascript">
function GetText(id){
    var element = document.getElementById(id);
    var text = element.innerHTML;
    alert(text);
}
</script>
<br><br>
برای دریافت متن داخل بلاک div با استفاده از متد innerHTML، در داخل کادر رنگی بالا کلیک کنید.
</body>
</html>
پیش نمایش
دسته بندی: آموزش مقدماتی » JavaScript
related مطالب بیشتر:
کار با تاریخ و زمان در جاوا اسکریپت (JavaScript)
تعریف و استفاده از متغیر (Variable) در جاوا اسکریپت (JavaScript)
متدهای کار با آرایه در جاوا اسکریپت (JavaScript)
دستور switch و case در جاوا اسکریپت (JavaScript)
کار با پنجره Pop-up در جاوا اسکریپت (JavaScript)
دیدگاه
more ۱۳۰ دیدگاه برای این مطلب ارسال شده است.
more دیدگاه جدید بر اساس تاریخ ارسال در انتهای دیدگاه های موجود نمایش داده می شود.
پـــرتو
۲۳:۳۹ ۱۴۰۳/۰۲/۰۲
سلام خسته نباشید شرمنده مزاحم میشم یه سوال داشتم می خواستم بپرسم که چرا بلاگفا باز نمیشه برام؟ کلا هر وبلاگی که مربوط به بلاگفا هست میرم باز نمیشه و برای دیگران هم باز نمیشه... بلاگفا چش شده؟ مشکل از منه یا از بلاگفا؟؟؟ ممنون میشم بگین لطفا مرسی
ظاهرا سرورهای سایت بلاگفا دچار اختلال سراسری شده است، متاسفانه اطلاع رسانی خاصی در این خصوص صورت نگرفته و مشخص نیست مشکل کی حل می شود!
پــرتو
۱۵:۲۳ ۱۴۰۳/۰۲/۱۶
سلام خوبید ؟ خسته نباشید گوشی پدرم شیاومی هست ایمیلمو ثبت کردم داخلش بعد می خواستم حذفش کنم نمیشد می گفت همه داده های توی تلفن حذف میشن بعد من تصمیم گرفتم تغییرش بدم ایمیلمو تو قسمت گوشی یعنی من ایمیلمو می خواستم توی گوگل پلی ثبتش کنم بعدش حذفش کنم که دیدم نمیشه حذف کرد یعنی منظورم log out کرد بعد گفتم ایمیلمو تغییر بدم که شد ولی نمی تونم توی گوشی تغییر بدم چطور می تونم ایمیل ثبت شده توی گوشی رو تغییر بدیم یا کلا حذف کرد بدون اینکه داده ها حذف شن؟ ممنون میشم بگید لطفا مرسی
متاسفانه این مورد پاسخ کوتاهی ندارد و فعالیت سایت هم در این زمینه ها نیست، توصیه می کنیم برای جلوگیری از حذف ناخواسته اطلاعات در صورتی که آموزش های موجود در وب (عموما به زبان انگلیسی) مشکلتان را رفع نمی کند به خدمات گوشی تلفن همراه مراجعه کنید.
پرتو
۲۰:۲۸ ۱۴۰۳/۰۲/۱۸
مگه شما دارین اموزشش رو؟ آدرسش رو میزارید؟ یا اگر سایتی رو میشناسید که آموزش داده باشه معرفی کنید ممنون میشم من خیلی گشتم توی نت ولی ندیدم همچین آموزشی رو اگر گزینه ای هم میشناسید که لغو کنه گزینه حذف حساب رو ممنون میشم معرفی کنید راستش من سختمه برم دم موبایل فروشی گوشی خودم نیست گوشی بابامه
ممنونم از پاسختون
عبارت "how change xiaomi gmail account" را در گوگل سرچ کنید آموزش های زیادی چه به صورت تصویری در Youtube و چه به صورت مقاله نمایش داده می شود که با توجه به هدفتان می توانید استفاده کنید، در هر صورت تغییر حساب گوشی صرفا در حالتی توصیه می شود که شما دقیقا بدانید چه کاری انجام می دهید در غیر اینصورت ممکن است اطلاعاتتان به درستی به حساب جدید منتقل نشوند!
سعیدی
۰۵:۴۹ ۱۴۰۳/۰۲/۱۹
با سلام
آیا می شه این تابع رو بصورت class نوشت؟
function locationWithNationalCode($code=0)
{
$code = (string) preg_replace('/[^0-9]/','',$code);
if(strlen($code)>10 or strlen($code)<8)
return false;

$code = str_pad($code, 10, 0, STR_PAD_LEFT);
for($i=0; $i<10; $i++)
$blist[] = str_pad($i, 10, $i, STR_PAD_LEFT);

if(in_array($code, $blist))
return false;

$list_code = str_split($code);
$last = (int) $list_code[9];
unset($list_code[9]);
$i = 10;
$sum = 0;
foreach($list_code as $key=>$_)
{
$sum += intval($_) * $i;
$i--;
}
$mod =(int) $sum % 11;
if($mod >= 2)
$mod = 11 - $mod;

if($mod!==$last)
return false;

$_code = substr($code,0,3);
switch($_code)
{
case'169': $city='آذرشهر'; $state='آذربایجان شرقی'; break;
case'170': $city='اسکو'; $state='آذربایجان شرقی'; break;
case'149': case'150': $city='اهر'; $state='آذربایجان شرقی'; break;
case'171': $city='بستان آباد'; $state='آذربایجان شرقی'; break;
case'168': $city='بناب'; $state='آذربایجان شرقی'; break;
case'136': case'137': case'138': $city='تبریز'; $state='آذربایجان شرقی'; break;
case'545': $city='ترکمانچای'; $state='آذربایجان شرقی'; break;
case'505': $city='جلفا'; $state='آذربایجان شرقی'; break;
case'636': $city='چاروایماق'; $state='آذربایجان شرقی'; break;
case'164': case'165': $city='سراب'; $state='آذربایجان شرقی'; break;
case'172': $city='شبستر'; $state='آذربایجان شرقی'; break;
case'623': $city='صوفیان'; $state='آذربایجان شرقی'; break;
case'506': $city='عجب شیر'; $state='آذربایجان شرقی'; break;
case'519': $city='کلیبر'; $state='آذربایجان شرقی'; break;
case'154': case'155': $city='مراغه'; $state='آذربایجان شرقی'; break;
case'567': $city='ورزقان'; $state='آذربایجان شرقی'; break;
case'173': $city='هریس'; $state='آذربایجان شرقی'; break;
case'159': case'160': $city='هشترود'; $state='آذربایجان شرقی'; break;
case'604': $city='هوراند'; $state='آذربایجان شرقی'; break;
case'274': case'275': $city='ارومیه'; $state='آذربایجان غربی'; break;
case'295': $city='اشنویه'; $state='آذربایجان غربی'; break;
case'637': $city='انزل'; $state='آذربایجان غربی'; break;
case'292': $city='بوکان'; $state='آذربایجان غربی'; break;
case'492': $city='پلدشت'; $state='آذربایجان غربی'; break;
case'289': $city='پیرانشهر'; $state='آذربایجان غربی'; break;
case'677': $city='تخت سلیمان'; $state='آذربایجان غربی'; break;
case'294': $city='تکاب'; $state='آذربایجان غربی'; break;
case'493': $city='چایپاره'; $state='آذربایجان غربی'; break;
case'279': case'280': $city='خوی'; $state='آذربایجان غربی'; break;
case'288': $city='سردشت'; $state='آذربایجان غربی'; break;
case'284': case'285': $city='سلماس'; $state='آذربایجان غربی'; break;
case'638': $city='سیلوانه'; $state='آذربایجان غربی'; break;
case'291': $city='سیه چشمه(چالدران)'; $state='آذربایجان غربی'; break;
case'640': $city='شوط'; $state='آذربایجان غربی'; break;
case'293': $city='شاهین دژ'; $state='آذربایجان غربی'; break;
case'675': $city='کشاورز'; $state='آذربایجان غربی'; break;
case'282': case'283': $city='ماکو'; $state='آذربایجان غربی'; break;
case'286': case'287': $city='مهاباد'; $state='آذربایجان غربی'; break;
case'296': case'297': $city='میاندوآب'; $state='آذربایجان غربی'; break;
case'290': $city='نقده'; $state='آذربایجان غربی'; break;
case'400': case'401': $city='اسدآباد'; $state='همدان'; break;
case'404': case'405': $city='بهار'; $state='همدان'; break;
case'397': $city='تویسرکان'; $state='همدان'; break;
case'398': case'399': $city='رزن'; $state='همدان'; break;
case'647': $city='شراء و پیشخوار'; $state='همدان'; break;
case'502': $city='فامنین'; $state='همدان'; break;
case'584': $city='قلقل رود'; $state='همدان'; break;
case'402': case'403': $city='کبودرآهنگ'; $state='همدان'; break;
case'392': case'393': $city='ملایر'; $state='همدان'; break;
case'395': case'396': $city='نهاوند'; $state='همدان'; break;
case'386': case'387': $city='همدان'; $state='همدان'; break;
case'503': $city='ابرکوه'; $state='یزد'; break;
case'444': $city='اردکان'; $state='یزد'; break;
case'551': $city='اشکذر'; $state='یزد'; break;
case'447': $city='بافق'; $state='یزد'; break;
case'561': $city='بهاباد'; $state='یزد'; break;
case'445': $city='تفت'; $state='یزد'; break;
case'718': $city='دستگردان'; $state='یزد'; break;
case'083': $city='طبس'; $state='یزد'; break;
case'446': $city='مهریز'; $state='یزد'; break;
case'448': $city='میبد'; $state='یزد'; break;
case'552': $city='نیر'; $state='یزد'; break;
case'543': $city='هرات و مروست'; $state='یزد'; break;
case'442': case'443': $city='یزد'; $state='یزد'; break;
case'051': $city='آشتیان'; $state='مرکزی'; break;
case'052': case'053': $city='اراک'; $state='مرکزی'; break;
case'058': $city='تفرش'; $state='مرکزی'; break;
case'055': $city='خمین'; $state='مرکزی'; break;
case'617': $city='خنداب'; $state='مرکزی'; break;
case'057': $city='دلیجان'; $state='مرکزی'; break;
case'618': $city='زرند مرکزی'; $state='مرکزی'; break;
case'059': case'060': $city='ساوه'; $state='مرکزی'; break;
case'061': case'062': $city='سربند'; $state='مرکزی'; break;
case'544': $city='فراهان'; $state='مرکزی'; break;
case'056': $city='محلات'; $state='مرکزی'; break;
case'571': $city='وفس'; $state='مرکزی'; break;
case'593': $city='هندودر'; $state='مرکزی'; break;
case'667': $city='ابوموسی'; $state='هرمزگان'; break;
case'348': $city='بستک'; $state='هرمزگان'; break;
case'586': $city='بشاگرد'; $state='هرمزگان'; break;
case'338': case'339': $city='بندرعباس'; $state='هرمزگان'; break;
case'343': case'344': $city='بندرلنگه'; $state='هرمزگان'; break;
case'346': $city='جاسک'; $state='هرمزگان'; break;
case'337': $city='حاجی آباد'; $state='هرمزگان'; break;
case'554': $city='خمیر'; $state='هرمزگان'; break;
case'469': $city='رودان'; $state='هرمزگان'; break;
case'537': $city='فین'; $state='هرمزگان'; break;
case'345': $city='قشم'; $state='هرمزگان'; break;
case'470': $city='گاوبندی'; $state='هرمزگان'; break;
case'341': case'342': $city='میناب'; $state='هرمزگان'; break;
case'483': case'484': $city='ازنا'; $state='لرستان'; break;
case'557': $city='اشترینان'; $state='لرستان'; break;
case'418': $city='الشتر'; $state='لرستان'; break;
case'416': case'417': $city='الیگودرز'; $state='لرستان'; break;
case'412': case'413': $city='بروجرد'; $state='لرستان'; break;
case'592': $city='پاپی'; $state='لرستان'; break;
case'612': $city='چغلوندی'; $state='لرستان'; break;
case'613': $city='چگنی'; $state='لرستان'; break;
case'406': case'407': $city='خرم آباد'; $state='لرستان'; break;
case'421': $city='دورود'; $state='لرستان'; break;
case'598': $city='رومشکان'; $state='لرستان'; break;
case'419': $city='کوهدشت'; $state='لرستان'; break;
case'385': $city='ملاوی(پلدختر)'; $state='لرستان'; break;
case'420': $city='نورآباد(دلفان)'; $state='لرستان'; break;
case'528': $city='ویسیان'; $state='لرستان'; break;
case'213': case'214': $city='آمل'; $state='مازندران'; break;
case'205': case'206': $city='بابل'; $state='مازندران'; break;
case'498': $city='بابل'; $state='مازندران'; break;
case'568': $city='بندپی'; $state='مازندران'; break;
case'711': $city='بندپی شرقی'; $state='مازندران'; break;
case'217': case'218': $city='بهشهر'; $state='مازندران'; break;
case'221': $city='تنکابن'; $state='مازندران'; break;
case'582': $city='جویبار'; $state='مازندران'; break;
case'483': $city='چالوس'; $state='مازندران'; break;
case'625': $city='چمستان'; $state='مازندران'; break;
case'576': $city='چهاردانگه'; $state='مازندران'; break;
case'578': $city='دودانگه'; $state='مازندران'; break;
case'227': $city='رامسر'; $state='مازندران'; break;
case'208': case'209': $city='ساری'; $state='مازندران'; break;
case'225': $city='سوادکوه'; $state='مازندران'; break;
case'577': $city='شیرگاه'; $state='مازندران'; break;
case'712': $city='عباس آباد'; $state='مازندران'; break;
case'215': case'216': $city='قائمشهر'; $state='مازندران'; break;
case'626': $city='کجور'; $state='مازندران'; break;
case'627': $city='کلاردشت'; $state='مازندران'; break;
case'579': $city='گلوگاه'; $state='مازندران'; break;
case'713': $city='میاندورود'; $state='مازندران'; break;
case'499': $city='نکاء'; $state='مازندران'; break;
case'222': $city='نور'; $state='مازندران'; break;
case'219': case'220': $city='نوشهر'; $state='مازندران'; break;
case'500': case'501': $city='هراز و محمودآباد'; $state='مازندران'; break;
case'623': $city='آزادشهر'; $state='گلستان'; break;
case'497': $city='آق قلا'; $state='گلستان'; break;
case'223': $city='بندرترکمن'; $state='گلستان'; break;
case'689': $city='بندرگز'; $state='گلستان'; break;
case'487': $city='رامیان'; $state='گلستان'; break;
case'226': $city='علی آباد'; $state='گلستان'; break;
case'224': $city='کردکوی'; $state='گلستان'; break;
case'386': $city='کلاله'; $state='گلستان'; break;
case'211': case'212': $city='گرگان'; $state='گلستان'; break;
case'628': $city='گمیشان'; $state='گلستان'; break;
case'202': case'203': $city='گنبد کاووس'; $state='گلستان'; break;
case'531': $city='مراوه تپه'; $state='گلستان'; break;
case'488': $city='مینودشت'; $state='گلستان'; break;
case'261': $city='آستارا'; $state='گیلان'; break;
case'273': $city='آستانه'; $state='گیلان'; break;
case'630': $city='املش'; $state='گیلان'; break;
case'264': $city='بندرانزلی'; $state='گیلان'; break;
case'518': $city='خمام'; $state='گیلان'; break;
case'631': $city='رحیم آباد'; $state='گیلان'; break;
case'258': case'259': $city='رشت'; $state='گیلان'; break;
case'570': $city='رضوانشهر'; $state='گیلان'; break;
case'265': $city='رودبار'; $state='گیلان'; break;
case'268': case'269': $city='رودسر'; $state='گیلان'; break;
case'653': $city='سنگر'; $state='گیلان'; break;
case'517': $city='سیاهکل'; $state='گیلان'; break;
case'569': $city='شفت'; $state='گیلان'; break;
case'267': $city='صومعه سرا'; $state='گیلان'; break;
case'262': case'263': $city='طالش'; $state='گیلان'; break;
case'593': $city='عمارلو'; $state='گیلان'; break;
case'266': $city='فومن'; $state='گیلان'; break;
case'693': $city='کوچصفهان'; $state='گیلان'; break;
case'271': case'272': $city='لاهیجان'; $state='گیلان'; break;
case'694': $city='لشت نشاء'; $state='گیلان'; break;
case'270': $city='لنگرود'; $state='گیلان'; break;
case'516': $city='ماسال و شاندرمن'; $state='گیلان'; break;
case'333': case'334': $city='اسلام آباد'; $state='کرمانشاه'; break;
case'691': $city='باینگان'; $state='کرمانشاه'; break;
case'323': case'322': $city='پاوه'; $state='کرمانشاه'; break;
case'595': $city='ثلاث باباجانی'; $state='کرمانشاه'; break;
case'395': $city='جوانرود'; $state='کرمانشاه'; break;
case'641': $city='حمیل'; $state='کرمانشاه'; break;
case'596': $city='روانسر'; $state='کرمانشاه'; break;
case'336': $city='سرپل ذهاب'; $state='کرمانشاه'; break;
case'335': $city='سنقر'; $state='کرمانشاه'; break;
case'496': $city='صحنه'; $state='کرمانشاه'; break;
case'337': $city='قصرشیرین'; $state='کرمانشاه'; break;
case'324': case'325': $city='کرمانشاه'; $state='کرمانشاه'; break;
case'394': $city='کرند'; $state='کرمانشاه'; break;
case'330': $city='کنگاور'; $state='کرمانشاه'; break;
case'332': $city='گیلانغرب'; $state='کرمانشاه'; break;
case'331': $city='هرسین'; $state='کرمانشاه'; break;
case'687': $city='باشت'; $state='کهکیلویه و بویراحمد'; break;
case'422': case'423': $city='بویراحمد(یاسوج)'; $state='کهکیلویه و بویراحمد'; break;
case'599': $city='بهمنی'; $state='کهکیلویه و بویراحمد'; break;
case'600': $city='چاروسا'; $state='کهکیلویه و بویراحمد'; break;
case'688': $city='دروهان'; $state='کهکیلویه و بویراحمد'; break;
case'424': case'425': $city='کهکیلویه(دهدشت)'; $state='کهکیلویه و بویراحمد'; break;
case'426': $city='گچساران(دوگنبدان)'; $state='کهکیلویه و بویراحمد'; break;
case'550': $city='لنده'; $state='کهکیلویه و بویراحمد'; break;
case'697': $city='مارگون'; $state='کهکیلویه و بویراحمد'; break;
case'384': $city='بانه'; $state='کردستان'; break;
case'377': case'378': $city='بیجار'; $state='کردستان'; break;
case'558': $city='دهگلان'; $state='کردستان'; break;
case'385': $city='دیواندره'; $state='کردستان'; break;
case'646': $city='سروآباد'; $state='کردستان'; break;
case'375': case'376': $city='سقز'; $state='کردستان'; break;
case'372': case'373': $city='سنندج'; $state='کردستان'; break;
case'379': case'380': $city='قروه'; $state='کردستان'; break;
case'383': $city='کامیاران'; $state='کردستان'; break;
case'674': $city='کرانی'; $state='کردستان'; break;
case'381': case'382': $city='مریوان'; $state='کردستان'; break;
case'676': $city='نمشیر'; $state='کردستان'; break;
case'722': $city='ارزونیه'; $state='کرمان'; break;
case'542': $city='انار'; $state='کرمان'; break;
case'312': case'313': $city='بافت'; $state='کرمان'; break;
case'317': $city='بردسیر'; $state='کرمان'; break;
case'310': case'311': $city='بم'; $state='کرمان'; break;
case'302': case'303': $city='جیرفت'; $state='کرمان'; break;
case'583': $city='رابر'; $state='کرمان'; break;
case'321': $city='راور'; $state='کرمان'; break;
case'382': $city='راین'; $state='کرمان'; break;
case'304': case'305': $city='رفسنجان'; $state='کرمان'; break;
case'536': $city='رودبار کهنوج'; $state='کرمان'; break;
case'605': $city='ریگان'; $state='کرمان'; break;
case'308': case'309': $city='زرند'; $state='کرمان'; break;
case'306': case'307': $city='سیرجان'; $state='کرمان'; break;
case'319': $city='شهداد'; $state='کرمان'; break;
case'313': case'314': $city='شهربابک'; $state='کرمان'; break;
case'606': $city='عنبرآباد'; $state='کرمان'; break;
case'320': $city='فهرج'; $state='کرمان'; break;
case'698': $city='قلعه گنج'; $state='کرمان'; break;
case'298': case'299': $city='کرمان'; $state='کرمان'; break;
case'535': $city='کوهبنان'; $state='کرمان'; break;
case'315': case'316': $city='کهنوج'; $state='کرمان'; break;
case'318': $city='گلباف'; $state='کرمان'; break;
case'607': $city='ماهان'; $state='کرمان'; break;
case'608': $city='منوجان'; $state='کرمان'; break;
case'508': $city='آبیک'; $state='قزوین'; break;
case'538': $city='آوج'; $state='قزوین'; break;
case'728': $city='البرز'; $state='قزوین'; break;
case'509': $city='بوئین زهرا'; $state='قزوین'; break;
case'438': case'439': $city='تاکستان'; $state='قزوین'; break;
case'580': $city='رودبار الموت'; $state='قزوین'; break;
case'590': $city='رودبار شهرستان'; $state='قزوین'; break;
case'559': $city='ضیاءآباد'; $state='قزوین'; break;
case'588': $city='طارم سفلی'; $state='قزوین'; break;
case'431': case'432': $city='قزوین'; $state='قزوین'; break;
case'037': case'038': $city='قم'; $state='قم'; break;
case'702': $city='کهک'; $state='قم'; break;
case'240': case'241': $city='آباده'; $state='فارس'; break;
case'670': $city='آباده طشک'; $state='فارس'; break;
case'648': $city='ارسنجان'; $state='فارس'; break;
case'252': $city='استهبان'; $state='فارس'; break;
case'678': $city='اشکنان'; $state='فارس'; break;
case'253': $city='سپیدان'; $state='فارس'; break;
case'649': $city='اوز'; $state='فارس'; break;
case'513': $city='بوانات'; $state='فارس'; break;
case'546': $city='بیضا'; $state='فارس'; break;
case'671': $city='جویم'; $state='فارس'; break;
case'246': case'247': $city='جهرم'; $state='فارس'; break;
case'654': $city='حاجی آباد(زرین دشت)'; $state='فارس'; break;
case'548': $city='خرامه'; $state='فارس'; break;
case'547': $city='خشت و کمارج'; $state='فارس'; break;
case'655': $city='خفر'; $state='فارس'; break;
case'248': case'249': $city='داراب'; $state='فارس'; break;
case'514': $city='سروستان'; $state='فارس'; break;
case'665': $city='سعادت آباد'; $state='فارس'; break;
case'673': $city='شیبکوه'; $state='فارس'; break;
case'228': case'229': case'230': $city='شیراز'; $state='فارس'; break;
case'679': $city='فراشبند'; $state='فارس'; break;
case'256': case'257': $city='فسا'; $state='فارس'; break;
case'244': case'245': $city='فیروزآباد'; $state='فارس'; break;
case'681': $city='قنقری(خرم بید)'; $state='فارس'; break;
case'723': $city='قیروکارزین'; $state='فارس'; break;
case'236': case'237': $city='کازرون'; $state='فارس'; break;
case'683': $city='کوار'; $state='فارس'; break;
case'656': $city='کراش'; $state='فارس'; break;
case'250': case'251': $city='لارستان'; $state='فارس'; break;
case'515': $city='لامرد'; $state='فارس'; break;
case'242': case'243': $city='مرودشت'; $state='فارس'; break;
case'238': case'239': $city='ممسنی'; $state='فارس'; break;
case'657': $city='مهر'; $state='فارس'; break;
case'255': $city='نی ریز'; $state='فارس'; break;
case'684': $city='ایوانکی'; $state='سمنان'; break;
case'700': $city='بسطام'; $state='سمنان'; break;
case'642': $city='بیارجمند'; $state='سمنان'; break;
case'457': $city='دامغان'; $state='سمنان'; break;
case'456': $city='سمنان'; $state='سمنان'; break;
case'458': case'459': $city='شاهرود'; $state='سمنان'; break;
case'460': $city='گرمسار'; $state='سمنان'; break;
case'530': $city='مهدیشهر'; $state='سمنان'; break;
case'520': $city='میامی'; $state='سمنان'; break;
case'358': case'359': $city='ایرانشهر'; $state='سیستان و بلوچستان'; break;
case'682': $city='بزمان'; $state='سیستان و بلوچستان'; break;
case'703': $city='بمپور'; $state='سیستان و بلوچستان'; break;
case'364': case'365': $city='چابهار'; $state='سیستان و بلوچستان'; break;
case'371': $city='خاش'; $state='سیستان و بلوچستان'; break;
case'701': $city='دشتیاری'; $state='سیستان و بلوچستان'; break;
case'720': $city='راسک'; $state='سیستان و بلوچستان'; break;
case'366': case'367': $city='زابل'; $state='سیستان و بلوچستان'; break;
case'704': $city='زابلی'; $state='سیستان و بلوچستان'; break;
case'361': case'362': $city='زاهدان'; $state='سیستان و بلوچستان'; break;
case'369': case'370': $city='سراوان'; $state='سیستان و بلوچستان'; break;
case'635': $city='سرباز'; $state='سیستان و بلوچستان'; break;
case'668': $city='سیب و سوران'; $state='سیستان و بلوچستان'; break;
case'533': $city='شهرکی و ناروئی(زهک)'; $state='سیستان و بلوچستان'; break;
case'705': $city='شیب آب'; $state='سیستان و بلوچستان'; break;
case'699': $city='فنوج'; $state='سیستان و بلوچستان'; break;
case'669': $city='قصرقند'; $state='سیستان و بلوچستان'; break;
case'725': $city='کنارک'; $state='سیستان و بلوچستان'; break;
case'597': $city='لاشار(اسپکه)'; $state='سیستان و بلوچستان'; break;
case'611': $city='میرجاوه'; $state='سیستان و بلوچستان'; break;
case'525': $city='نیک شهر'; $state='سیستان و بلوچستان'; break;
case'181': $city='آبادان'; $state='خوزستان'; break;
case'527': $city='آغاجاری'; $state='خوزستان'; break;
case'585': $city='اروندکنار'; $state='خوزستان'; break;
case'685': $city='امیدیه'; $state='خوزستان'; break;
case'663': $city='اندیکا'; $state='خوزستان'; break;
case'192': case'193': $city='اندیمشک'; $state='خوزستان'; break;
case'174': case'175': $city='اهواز'; $state='خوزستان'; break;
case'183': case'184': $city='ایذه'; $state='خوزستان'; break;
case'481': $city='باغ ملک'; $state='خوزستان'; break;
case'706': $city='بندر امام خمینی'; $state='خوزستان'; break;
case'194': case'195': $city='بندرماهشهر'; $state='خوزستان'; break;
case'185': case'186': $city='بهبهان'; $state='خوزستان'; break;
case'182': $city='خرمشهر'; $state='خوزستان'; break;
case'199': case'200': $city='دزفول'; $state='خوزستان'; break;
case'198': $city='دشت آزادگان'; $state='خوزستان'; break;
case'662': $city='رامشیر'; $state='خوزستان'; break;
case'190': case'191': $city='رامهرمز'; $state='خوزستان'; break;
case'692': $city='سردشت'; $state='خوزستان'; break;
case'189': $city='شادگان'; $state='خوزستان'; break;
case'707': $city='شاوور'; $state='خوزستان'; break;
case'526': $city='شوش'; $state='خوزستان'; break;
case'187': case'188': $city='شوشتر'; $state='خوزستان'; break;
case'729': $city='گتوند'; $state='خوزستان'; break;
case'730': $city='لالی'; $state='خوزستان'; break;
case'196': case'197': $city='مسجدسلیمان'; $state='خوزستان'; break;
case'661': $city='هندیجان'; $state='خوزستان'; break;
case'680': $city='هویزه'; $state='خوزستان'; break;
case'643': $city='احمدآباد'; $state='خراسان رضوی'; break;
case'562': $city='بجستان'; $state='خراسان رضوی'; break;
case'572': $city='بردسکن'; $state='خراسان رضوی'; break;
case'074': $city='تایباد'; $state='خراسان رضوی'; break;
case'644': $city='تخت جلگه'; $state='خراسان رضوی'; break;
case'072': case'073': $city='تربت جام'; $state='خراسان رضوی'; break;
case'069': case'070': $city='تربت حیدریه'; $state='خراسان رضوی'; break;
case'521': $city='جغتای'; $state='خراسان رضوی'; break;
case'573': $city='جوین'; $state='خراسان رضوی'; break;
case'522': $city='چناران'; $state='خراسان رضوی'; break;
case'724': $city='خلیل آباد'; $state='خراسان رضوی'; break;
case'076': $city='خواف'; $state='خراسان رضوی'; break;
case'077': $city='درگز'; $state='خراسان رضوی'; break;
case'650': $city='رشتخوار'; $state='خراسان رضوی'; break;
case'574': $city='زبرخان'; $state='خراسان رضوی'; break;
case'078': case'079': $city='سبزوار'; $state='خراسان رضوی'; break;
case'081': $city='سرخس'; $state='خراسان رضوی'; break;
case'084': $city='فریمان'; $state='خراسان رضوی'; break;
case'651': $city='فیض آباد'; $state='خراسان رضوی'; break;
case'086': case'087': $city='قوچان'; $state='خراسان رضوی'; break;
case'089': case'090': $city='کاشمر'; $state='خراسان رضوی'; break;
case'553': $city='کلات'; $state='خراسان رضوی'; break;
case'091': $city='گناباد'; $state='خراسان رضوی'; break;
case'092': case'093': case'094': $city='مشهد'; $state='خراسان رضوی'; break;
case'097': $city='مشهد منطقه دو'; $state='خراسان رضوی'; break;
case'098': $city='مشهد منطقه سه'; $state='خراسان رضوی'; break;
case'096': $city='مشهد منطقه یک'; $state='خراسان رضوی'; break;
case'105': case'106': $city='نیشابور'; $state='خراسان رضوی'; break;
case'063': $city='اسفراین'; $state='خراسان شمالی'; break;
case'067': case'068': $city='بجنورد'; $state='خراسان شمالی'; break;
case'075': $city='جاجرم'; $state='خراسان شمالی'; break;
case'591': $city='رازوجرکلان'; $state='خراسان شمالی'; break;
case'082': $city='شیروان'; $state='خراسان شمالی'; break;
case'635': $city='فاروج'; $state='خراسان شمالی'; break;
case'524': $city='مانه و سملقان'; $state='خراسان شمالی'; break;
case'468': $city='اردل'; $state='چهارمحال و بختیاری'; break;
case'465': $city='بروجن'; $state='چهارمحال و بختیاری'; break;
case'461': case'462': $city='شهرکرد'; $state='چهارمحال و بختیاری'; break;
case'467': $city='فارسان'; $state='چهارمحال و بختیاری'; break;
case'632': $city='فلارد'; $state='چهارمحال و بختیاری'; break;
case'555': $city='کوهرنگ'; $state='چهارمحال و بختیاری'; break;
case'633': $city='کیار'; $state='چهارمحال و بختیاری'; break;
case'629': $city='گندمان'; $state='چهارمحال و بختیاری'; break;
case'466': $city='لردگان'; $state='چهارمحال و بختیاری'; break;
case'696': $city='میانکوه'; $state='چهارمحال و بختیاری'; break;
case'721': $city='بشرویه'; $state='خراسان جنوبی'; break;
case'064': case'065': $city='بیرجند'; $state='خراسان جنوبی'; break;
case'523': $city='درمیان'; $state='خراسان جنوبی'; break;
case'652': $city='زیرکوه'; $state='خراسان جنوبی'; break;
case'719': $city='سرایان'; $state='خراسان جنوبی'; break;
case'716': $city='سربیشه'; $state='خراسان جنوبی'; break;
case'085': $city='فردوس'; $state='خراسان جنوبی'; break;
case'088': $city='قائنات'; $state='خراسان جنوبی'; break;
case'563': $city='نهبندان'; $state='خراسان جنوبی'; break;
case'529': $city='بندر دیلم'; $state='بوشهر'; break;
case'353': $city='بندر گناوه'; $state='بوشهر'; break;
case'349': case'350': $city='بوشهر'; $state='بوشهر'; break;
case'355': $city='تنگستان'; $state='بوشهر'; break;
case'609': $city='جم'; $state='بوشهر'; break;
case'351': case'352': $city='دشتستان'; $state='بوشهر'; break;
case'354': $city='دشتی'; $state='بوشهر'; break;
case'732': $city='دلوار'; $state='بوشهر'; break;
case'357': $city='دیر'; $state='بوشهر'; break;
case'532': $city='سعد آباد'; $state='بوشهر'; break;
case'610': $city='شبانکاره'; $state='بوشهر'; break;
case'356': $city='کنگان'; $state='بوشهر'; break;
case'556': $city='اسلامشهر'; $state='تهران'; break;
case'658': $city='پاکدشت'; $state='تهران'; break;
case'001': case'002': case'003': case'004': case'005': case'006': case'007': case'008': $city='تهران مرکزی'; $state='تهران'; break;
case'011': $city='تهران جنوب'; $state='تهران'; break;
case'020': $city='تهران شرق'; $state='تهران'; break;
case'025': $city='تهرانشمال'; $state='تهران'; break;
case'015': $city='تهران غرب'; $state='تهران'; break;
case'043': $city='دماوند'; $state='تهران'; break;
case'666': $city='رباط کریم'; $state='تهران'; break;
case'489': $city='ساوجبلاغ'; $state='تهران'; break;
case'044': case'045': $city='شمیران'; $state='تهران'; break;
case'048': case'049': $city='شهرری'; $state='تهران'; break;
case'490': case'491': $city='شهریار'; $state='تهران'; break;
case'695': $city='طالقان'; $state='تهران'; break;
case'659': $city='فیروزکوه'; $state='تهران'; break;
case'031': case'032': $city='کرج'; $state='تهران'; break;
case'664': $city='کهریزک'; $state='تهران'; break;
case'717': $city='نظرآباد'; $state='تهران'; break;
case'041': case'042': $city='ورامین'; $state='تهران'; break;
case'471': case'472': $city='امور خارجه'; $state='کشورهای خارجی'; break;
case'454': $city='آبدانان'; $state='ایلام'; break;
case'581': $city='ارکوازی(ملکشاهی)'; $state='ایلام'; break;
case'449': case'450': $city='ایلام'; $state='ایلام'; break;
case'616': $city='ایوان'; $state='ایلام'; break;
case'534': $city='بدره'; $state='ایلام'; break;
case'455': $city='دره شهر'; $state='ایلام'; break;
case'451': $city='دهلران'; $state='ایلام'; break;
case'726': $city='زرین آباد'; $state='ایلام'; break;
case'634': $city='شیروان لومار'; $state='ایلام'; break;
case'453': $city='شیروان و چرداول'; $state='ایلام'; break;
case'727': $city='موسیان'; $state='ایلام'; break;
case'452': $city='مهران'; $state='ایلام'; break;
case'145': case'146': $city='اردبیل'; $state='اردبیل'; break;
case'731': $city='ارشق'; $state='اردبیل'; break;
case'690': $city='انگوت'; $state='اردبیل'; break;
case'601': $city='بیله سوار'; $state='اردبیل'; break;
case'504': $city='پارس آباد'; $state='اردبیل'; break;
case'163': $city='خلخال'; $state='اردبیل'; break;
case'714': $city='خورش رستم'; $state='اردبیل'; break;
case'715': $city='سرعین'; $state='اردبیل'; break;
case'566': $city='سنجبد(کوثر)'; $state='اردبیل'; break;
case'166': case'167': $city='مشکین شهر'; $state='اردبیل'; break;
case'161': case'162': $city='مغان'; $state='اردبیل'; break;
case'686': $city='نمین'; $state='اردبیل'; break;
case'603': $city='نیر'; $state='اردبیل'; break;
case'619': $city='آران و بیدگل'; $state='اصفهان'; break;
case'118': $city='اردستان'; $state='اصفهان'; break;
case'127': case'128': case'129': $city='اصفهان'; $state='اصفهان'; break;
case'620': $city='باغ بهادران'; $state='اصفهان'; break;
case'621': $city='بوئین و میاندشت'; $state='اصفهان'; break;
case'549': $city='تیران و کرون'; $state='اصفهان'; break;
case'564': $city='جرقویه'; $state='اصفهان'; break;
case'575': $city='چادگان'; $state='اصفهان'; break;
case'113': case'114': $city='خمینی شهر'; $state='اصفهان'; break;
case'122': $city='خوانسار'; $state='اصفهان'; break;
case'540': $city='خور و بیابانک'; $state='اصفهان'; break;
case'660': $city='دولت آباد'; $state='اصفهان'; break;
case'120': $city='سمیرم'; $state='اصفهان'; break;
case'512': $city='سمیرم سفلی (دهاقان)'; $state='اصفهان'; break;
case'510': case'511': $city='شاهین شهر'; $state='اصفهان'; break;
case'119': $city='شهرضا'; $state='اصفهان'; break;
case'115': $city='فریدن'; $state='اصفهان'; break;
case'112': $city='فریدونشهر'; $state='اصفهان'; break;
case'110': case'111': $city='فلاورجان'; $state='اصفهان'; break;
case'125': case'126': $city='کاشان'; $state='اصفهان'; break;
case'565': $city='کوهپایه'; $state='اصفهان'; break;
case'121': $city='گلپایگان'; $state='اصفهان'; break;
case'116': case'117': $city='لنجان(زرینشهر)'; $state='اصفهان'; break;
case'541': $city='مبارکه'; $state='اصفهان'; break;
case'622': $city='میمه'; $state='اصفهان'; break;
case'124': $city='نائین'; $state='اصفهان'; break;
case'108': case'109': $city='نجف آباد'; $state='اصفهان'; break;
case'123': $city='نطنز'; $state='اصفهان'; break;
case'428': case'427': $city='زنجان'; $state='زنجان'; break;
case'615': $city='ابهر و خرمدره'; $state='زنجان'; break;
default: $city='ثبت نشده'; $state='ثبت نشده';
}
return array('code'=>$code,'state'=>$state,'city'=>$city);
}
میخوام وقتی کد ملی میدم با این تابع فراخوانی بشه و شهر محل تولد رو بهم نشون بده من این تابع رو دارم ولی چون بصورت class نیست نمی دونم چطوری ازش استفاده کنم، ممنون میشم کمک کنید. با تشکر
اگر مشکل صرفا فراخوانی و استفاده از تابع برای نمایش جزئیات کد ملی شامل استان و شهر است می توانید از نمونه کد زیر استفاده کنید:
$code = '1234567890';
$result = locationWithNationalCode($code);
if($result){
$city = $result['state'];
$state = $result['city'];

echo 'City: ' . $city . ' State: ' . $state;
} else {
echo 'Your Code Is Not True!';
}
دقت کنید که کد ملی باید مقدار صحیح باشد در غیر این صورت تابع خطا برمی گرداند.
اگر هم الزامی برای نوشتن تابع به صورت کلاس است می توانید از نمونه زیر الگوبرداری کنید:
class YourClassName {
public static function locationWithNationalCode($code=0){}
}

$result = YourClassName::locationWithNationalCode($code);
سعیدی
۱۹:۰۷ ۱۴۰۳/۰۲/۱۹
دست شما درد نکنه خیلی خوب بود
این یکی رو چطوری فراخوانی کنم؟
<?php
function occasion($time = false, $time_zone = 'Asia/Tehran') {
@date_default_timezone_set($time_zone); // Set Time Zone

$time = ($time !== false and !is_int($time)) ? strtotime($time) : (($time !== false) ? $time : time());

$_func = array('miladi', 'shamsi', 'ghamari');
foreach($_func as $func) {
$_date = timeToDate($time, $func);
$date = explode('-', $_date);

$_month = (int)$date[1];
$_time = str_pad($date[2], 2, 0, STR_PAD_LEFT) . ' ' . _month($_month, $func);
$occasion[$func] = call_user_func($func, $_time);
}

return $occasion;
}

// Convert numbers to words
function _month($month = 1, $dateType = 'shamsi') {
$_month = (int)$month;
switch($_month) {
case 1:
$month = 'فروردین';
if($dateType == 'miladi')
$month = 'January';
else if($dateType == 'ghamari')
$month = 'محرم';
break;
case 2:
$month = 'اردیبهشت';
if($dateType == 'miladi')
$month = 'February';
else if($dateType == 'ghamari')
$month = 'صفر';
break;
case 3:
$month = 'خرداد';
if($dateType == 'miladi')
$month = 'March';
else if($dateType == 'ghamari')
$month = 'ربیع الأول';
break;
case 4:
$month = 'تیر';
if($dateType == 'miladi')
$month = 'April';
else if($dateType == 'ghamari')
$month = 'ربیع الآخر';
break;
case 5:
$month = 'مرداد';
if($dateType == 'miladi')
$month = 'May';
else if($dateType == 'ghamari')
$month = 'جمادى الأولى';
break;
case 6:
$month = 'شهریور';
if($dateType == 'miladi')
$month = 'June';
else if($dateType == 'ghamari')
$month = 'جمادى الآخرة';
break;
case 7:
$month = 'مهر';
if($dateType == 'miladi')
$month = 'July';
else if($dateType == 'ghamari')
$month = 'رجب';
break;
case 8:
$month = 'آبان';
if($dateType == 'miladi')
$month = 'August';
else if($dateType == 'ghamari')
$month = 'شعبان';
break;
case 9:
$month = 'آذر';
if($dateType == 'miladi')
$month = 'September';
else if($dateType == 'ghamari')
$month = 'رمضان';
break;
case 10:
$month = 'دی';
if($dateType == 'miladi')
$month = 'October';
else if($dateType == 'ghamari')
$month = 'شوال';
break;
case 11:
$month = 'بهمن';
if($dateType == 'miladi')
$month = 'November';
else if($dateType == 'ghamari')
$month = 'ذو القعدة';
break;
case 12:
$month = 'اسفند';
if($dateType == 'miladi')
$month = 'December';
else if($dateType == 'ghamari')
$month = 'ذو الحجة';
break;
default:
$month = 'فروردین';
}
return $month;
}

// Convert timestamp to Ghamari,Jalali,Miladi(AD) date
function timeToDate($time, $dateType = 'shamsi') {
$y = date('Y', $time);
$m = date('m', $time);
$d = date('d', $time);

$_date = date('Y-m-d', $time);
if($dateType == 'shamsi')
$_date = gregorianToJalali($y, $m, $d);
else if($dateType == 'ghamari')
$_date = gregorianToGhamari($y, $m, $d);

return $_date;
}

function gregorianToJalali($year, $month, $day) {
$g_d_m = array(0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334);
$jy = ($year <= 1600) ? 0 : 979;
$year -= ($year <= 1600) ? 621 : 1600;
$gy2 = ($month > 2) ? ($year + 1) : $year;
$days = (365 * $year) + ((int)(($gy2 + 3) / 4)) - ((int)(($gy2 + 99) / 100)) + ((int)(($gy2 + 399) / 400)) - 80 + $day + $g_d_m[$month - 1];
$jy += 33 * ((int)($days / 12053));
$days %= 12053;
$jy += 4 * ((int)($days / 1461));
$days %= 1461;
$jy += (int)(($days - 1) / 365);
if($days > 365) $days = ($days - 1) % 365;
$jm = ($days < 186) ? 1 + (int)($days / 31) : 7 + (int)(($days - 186) / 30);
$jd = 1 + (($days < 186) ? ($days % 31) : (($days - 186) % 30));
return $jy . '-' . $jm . '-' . $jd;
}

function gregorianToGhamari($year, $month, $day) {
if($year > 1582 or ($year == 1581 and $month > 9 and $day > 14)) {
$int1 = (int)(($month - 14) / 12);
$jd = (int)((1461 * ($year + 4800 + $int1)) / 4) + (int)((367 * ($month - 2 - (12 * ($int1)))) / 12) - (int)((3 * ((int)(($year + 4900 + $int1) / 100))) / 4) + $day - 32075;
} else
$jd = (367 * $year) - (int)((7 * ($year + 5001 + (int)(($month - 9) / 7))) / 4) + (int)((275 * $month) / 9) + $day + 1729777;

$l = $jd - 1948440 + 10632;
$n = (int)(($l - 1) / 10631);
$l = $l - 10631 * $n + 354;
$j = (((int)((10985 - $l) / 5316)) * ((int)((50 * $l) / 17719))) + (((int)($l / 5670)) * ((int)((43 * $l) / 15238)));
$l = $l - ((int)((30 - $j) / 15)) * ((int)((17719 * $j) / 50)) - ((int)($j / 16)) * ((int)((15238 * $j) / 43)) + 29;
$month = (int)((24 * $l) / 709);
$day = $l - (int)((709 * $month) / 24);
$year = (30 * $n) + $j - 30;
return $year . '-' . $month . '-' . $day;
}

// Miladi (AD) occasions
function miladi($time) {
switch($time) {
case '01 January':
$oc = 'جشن آغاز سال نو میلادی';
break;
case '01 February':
$oc = 'روز جهانی حجاب (روز همبستگی با بانوان محجّبه)';
break;
case '11 February':
$oc = 'تولد توماس ادیسون - حمله به سفارت روسیه و قتل گریبایدوف سفیر روسیه تزاری در ایران';
break;
case '12 February':
$oc = 'زادروز چارلز داروین بنیانگذار نظریه‌ی فرگشت از طریق انتخاب طبیعی';
break;
case '21 February':
$oc = 'روز جهانی زبان مادری - درگذشت فردریک بانتینگ کاشف انسولین';
break;
case '08 March':
$oc = 'روز جهانی زن';
break;
case '14 March':
$oc = 'تولد آلبرت انیشتین';
break;
case '22 March':
$oc = 'روز جهانی آب';
break;
case '23 March':
$oc = 'روز جهانی هواشناسی';
break;
case '27 March':
$oc = 'روز جهانی تئاتر';
break;
case '07 April':
$oc = 'روز سلامتی (روز جهانی بهداشت)';
break;
case '22 April':
$oc = 'روز جهانی زمین';
break;
case '29 April':
$oc = 'روز جهانی روانشناس و مشاور';
break;
case '01 May':
$oc = 'روز جهانی کار و کارگر';
break;
case '05 May':
$oc = 'روز جهانی ماما';
break;
case '08 May':
$oc = 'روز جهانی صلیب سرخ و هلال احمر';
break;
case '15 May':
$oc = 'روز جهانی خانواده';
break;
case '17 May':
$oc = 'روز جهانی ارتباطات';
break;
case '18 May':
$oc = 'روز جهانی موزه و میراث فرهنگی';
break;
case '21 May':
$oc = 'روز جهانی توسعه فرهنگی';
break;
case '31 May':
$oc = 'روز جهانی بدون دخانیات';
break;
case '04 June':
$oc = 'درگذشت ماری کوری کاشف پولونیم و رادیوم';
break;
case '05 June':
$oc = 'روز جهانی محیط زیست';
break;
case '10 June':
$oc = 'روز جهانی صنایع دستی';
break;
case '14 June':
$oc = 'روز جهانی اهدای خون';
break;
case '17 June':
$oc = 'روز جهانی بیابان زدایی';
break;
case '26 June':
$oc = 'روز جهانی مبارزه با مواد مخدر';
break;
case '01 August':
$oc = 'روز جهانی شیر مادر';
break;
case '13 August':
$oc = 'روز جهانی چپ دست ها';
break;
case '21 August':
$oc = 'روز جهانی مسجد';
break;
case '30 August':
$oc = 'تولد ارنست رادفورد، فیزیکدان انگلیسی و پدر انرژی هسته ای';
break;
case '02 September':
$oc = 'وقوع آتش سوزی بزرگ لندن';
break;
case '10 September':
$oc = 'روز جهانی پیشگیری از خودکشی';
break;
case '11 September':
$oc = 'حمله به برج ‌های دوقلوی مرکز تجارت جهانی';
break;
case '12 September':
$oc = 'روز گرامیداشت برنامه نویسان';
break;
case '21 September':
$oc = 'روز جهانی صلح';
break;
case '26 September':
$oc = 'ارائه نظریه نسبیت خاص توسط آلبرت انیشتین';
break;
case '27 September':
$oc = 'روز جهانی جهانگردی';
break;
case '29 September':
$oc = 'روز جهانی دریا نوردی';
break;
case '30 September':
$oc = 'روز جهانی ناشنوایان - روز جهانی ترجمه و مترجم';
break;
case '01 October':
$oc = 'روز جهانی سالمندان';
break;
case '05 October':
$oc = 'روز جهانی معلم';
break;
case '08 October':
$oc = 'روز جهانی کودک';
break;
case '09 October':
$oc = 'روز جهانی پست';
break;
case '14 October':
$oc = 'روز جهانی استاندارد';
break;
case '15 October':
$oc = 'روز جهانی نابینایان (عصای سفید)';
break;
case '16 October':
$oc = 'روز جهانی غذا';
break;
case '17 October':
$oc = 'روز جهانی ریشه کنی فقر';
break;
case '18 October':
$oc = 'درگذشت توماس ادیسون';
break;
case '21 October':
$oc = 'اختراع لامپ برق توسط توماس ادیسون';
break;
case '29 October':
$oc = 'روز جهانی بزرگداشت کورش کبیر';
break;
case '04 November':
$oc = 'تولد فردریک بانتینگ کاشف انسولین';
break;
case '07 November':
$oc = 'تولد ماری کوری کاشف پولونیم و رادیوم';
break;
case '17 November':
$oc = 'روز جهانی فلسفه';
break;
case '25 November':
$oc = 'ارائه نظریه نسبیت عام توسط آلبرت انیشتین - روز جهانی مبارزه با خشونت علیه زنان';
break;
case '01 December':
$oc = 'روز جهانی مبارزه با ایدز';
break;
case '03 December':
$oc = 'روز جهانی معلولان';
break;
case '07 December':
$oc = 'روز جهانی هواپیمایی';
break;
case '20 December':
$oc = 'زادروز دیوید بوهم فیزیک دان مشهور آمریکایی';
break;
case '25 December':
$oc = 'میلاد حضرت مسیح (ع) - جشن کریسمس';
break;
default:
$oc = '';
}
return $oc;
}

// Shamsi occasions
function shamsi($time) {
switch($time) {
case '01 فروردین':
$oc = 'آغاز نوروز (تعطیل)';
break;
case '02 فروردین':
$oc = 'عید نوروز - تهاجم ماموران پهلوی به مدرسه فیضیه قم (1342هـ.ش) - آغاز عملیات فتح المبین (1361هـ.ش) (تعطیل)';
break;
case '03 فروردین':
$oc = 'عید نوروز (تعطیل)';
break;
case '04 فروردین':
$oc = 'عید نوروز (تعطیل)';
break;
case '06 فروردین':
$oc = 'روز امید ، روزشادباش نویسی - زادروز آشو زرتشت، اَبَراِنسان بزرگ تاریخ';
break;
case '10 فروردین':
$oc = 'جشن آبانگاه';
break;
case '12 فروردین':
$oc = 'روز جمهوری اسلامی ایران (تعطیل)';
break;
case '13 فروردین':
$oc = 'روز طبیعت - جشن سیزده به در (تعطیل)';
break;
case '17 فروردین':
$oc = 'سروش روز ، جشن سروشگان';
break;
case '19 فروردین':
$oc = 'شهادت آیت الله سید محمد باقر صدر و خواهر ایشان بنت الهدی توسط حکومت بعث عراق (1359هـ.ش) - فروردین روز ، جشن فروردینگان';
break;
case '20 فروردین':
$oc = 'روز ملّی فن آوری هسته ای';
break;
case '21 فروردین':
$oc = 'روز هنر انقلاب اسلامی ، شهادت امیر سپهبد علی سیاد شیرازی (1378هـ.ش)';
break;
case '25 فروردین':
$oc = 'روز بزرگداشت عطار نیشابوری';
break;
case '29 فروردین':
$oc = 'روز ارتش جمهوری اسلامی و نیروی زمینی';
break;
case '01 اردیبهشت':
$oc = 'روز بزرگداشت سعدی';
break;
case '02 اردیبهشت':
$oc = 'تاسیس سپاه پاسداران انقلاب اسلامی (1358هـ.ش) - سالروز اعلام انقلاب فرهنگی (1359هـ.ش) - جشن گیاه آوری ، روز زمین پاک';
break;
case '03 اردیبهشت':
$oc = 'روز بزرگداشت شیخ بهایی - روز ملی کار آفرینی';
break;
case '04 اردیبهشت':
$oc = 'آغاز به کار نخستین فرستنده عمومی رادیویی در ایران به نام «رادیو تهران»';
break;
case '05 اردیبهشت':
$oc = 'شکست حمله ی نظامی آمریکا با ایران در طبس (1359هـ.ش)';
break;
case '09 اردیبهشت':
$oc = 'روز شوراها';
break;
case '10 اردیبهشت':
$oc = 'روز ملی خلیج فارس - آغاز عملیات بیت المقدس (1361هـ.ش) - جشن چهل ام نوروز';
break;
case '11 اردیبهشت':
$oc = 'انتشار نخستین روزنامه در ایران به نام «کاغذ اخبار» توسط «میرزا صالح شیرازی»';
break;
case '12 اردیبهشت':
$oc = 'شهادت استاد مرتضی مطهری (1358هـ.ش) روز معلم';
break;
case '15 اردیبهشت':
$oc = 'روز بزرگداشت شیخ صدوق - جشن میانه بهار ، جشن بهاربد - روز شیراز';
break;
case '17 اردیبهشت':
$oc = 'روز اسناد ملی و میراث مکتوب';
break;
case '24 اردیبهشت':
$oc = 'لغو امتیاز تنباکو به فتوای آیت الله میرزا حسن شیرازی (1270)';
break;
case '25 اردیبهشت':
$oc = 'روز بزرگداشت فردوسی';
break;
case '27 اردیبهشت':
$oc = 'روز ارتباطات و روابط عمومی';
break;
case '28 اردیبهشت':
$oc = 'روز بزرگداشت حکیم عمر خیام';
break;
case '01 خرداد':
$oc = 'روز بهره وری و بهینه سازی مصرف - روز بزرگداشت ملاصدرا';
break;
case '03 خرداد':
$oc = 'فتح خرمشهر در عملیات بیت المقدس ( 1361 هـ.ش) - روز مقاومت ایثار و پیروزی';
break;
case '04 خرداد':
$oc = 'روز مقاومت و پایداری - روز دزفول';
break;
case '06 خرداد':
$oc = 'خرداد روز ، جشن خردادگان';
break;
case '14 خرداد':
$oc = 'رحلت امام خمینی (ره) رهبر کبیر انقلاب و بنیانگذار جمهوری اسلامی ایران (1368 هـ.ش) - انتخاب آیت الله خامنه ای به رهبری (1368 هـ.ش) (تعطیل)';
break;
case '15 خرداد':
$oc = 'قیام خونین 15 خرداد (1342 هـ.ش) (تعطیل)';
break;
case '20 خرداد':
$oc = 'شهادت آیت الله سعیدی به دست مأموران ستم شاهی (1349 هـ.ش)';
break;
case '25 خرداد':
$oc = 'روز ملی گل و گیاه';
break;
case '27 خرداد':
$oc = 'روز جهاد کشاورزی';
break;
case '29 خرداد':
$oc = 'درگذشت دکتر علی شریعتی (1356 هـ.ش)';
break;
case '30 خرداد':
$oc = 'انفجار در حرم حضرت امام رضا (ع) به دست ایادی امریکا (1373 هـ.ش)';
break;
case '31 خرداد':
$oc = 'روز بسیج اساتید و شهادت دکتر مصطفی چمران (1360 هـ.ش)';
break;
case '01 تیر':
$oc = 'روز تبلیغ و اطلاع رسانی دینی ، سالروز صدور فرمان امام خمینی (ره) مبنی بر تاسیس سازمان تبلیغات اسلامی (1360 هـ.ش) - روز اصناف - جشن آب پاشونک و آغاز تابستان';
break;
case '07 تیر':
$oc = 'شهادت مظلومانه ی آیت الله دکتر بهشتی و 72 تن از یاران امام خمینی (ره) با انفجار بمب منافقان در دفتر مرکزی حزب جمهوری اسلامی (1360 هـ.ش) - روز قوه ی قضائیه';
break;
case '08 تیر':
$oc = 'روز مبارزه با سلاح های شیمیایی و میکروبی';
break;
case '10 تیر':
$oc = 'روز صنعت و معدن';
break;
case '11 تیر':
$oc = 'شهادت آیت الله صدوقی چهارمین شهید محراب به دست منافقان (1361 هـ.ش)';
break;
case '12 تیر':
$oc = 'حمله به هواپیمای مسافربری جمهوری اسلامی ایران توسط ناوگان آمریکای جنایتکار (1368 هـ.ش)';
break;
case '13 تیر':
$oc = 'سالروز درگذشت دکتر معین - تیر روز ، جشن تیرگان';
break;
case '14 تیر':
$oc = 'روز قلم ، تولد حضرت امام خمینی (ره)';
break;
case '15 تیر':
$oc = 'جشن خام خواری';
break;
case '16 تیر':
$oc = 'روز مالیات';
break;
case '21 تیر':
$oc = 'روز عفاف و حجاب (سالروز قیام مردم مشهد علیه کشف حجاب و کشتار مسجد گوهرشاد توسّط مأموران حکومت رضاخان) (1314 هـ.ش)';
break;
case '25 تیر':
$oc = 'روز بهزیستی و تامین اجتماعی';
break;
case '27 تیر':
$oc = 'اعلام پذیرش قطعنامه 598 شورای امنیت از سوی ایران (1368 هـ.ش)';
break;
case '05 مرداد':
$oc = 'سالروز عملیات افتخار آفرین مرصاد (1367 هـ.ش)';
break;
case '06 مرداد':
$oc = 'روز ترویج آموزش های فنی و حرفه ای';
break;
case '07 مرداد':
$oc = 'مرداد روز ، جشن مردادگان';
break;
case '08 مرداد':
$oc = 'روز بزرگداشت شیخ شهاب الدین سهروردی';
break;
case '10 مرداد':
$oc = 'جشن چله تابستان';
break;
case '14 مرداد':
$oc = 'صدور فرمان مشروطیت';
break;
case '16 مرداد':
$oc = 'تشکیل جهاد دانشگاهی (1359 هـ.ش)';
break;
case '17 مرداد':
$oc = 'روز خبرنگار';
break;
case '28 مرداد':
$oc = 'سالروز کودتای 28 مرداد علیه دولت دکتر محمد مصدق - کودتای آمریکا برای باز گرداندن شاه (1332 هـ.ش) - سالروز فاجعه آتش زدن سینما رکس آبادان';
break;
case '30 مرداد':
$oc = 'روز بزرگداشت علامه مجلسی';
break;
case '01 شهریور':
$oc = 'روز بزرگداشت بوعلی سینا و روز پزشک';
break;
case '02 شهریور':
$oc = 'آغاز هفته دولت';
break;
case '04 شهریور':
$oc = 'روز کارمند - زادروز داراب (کوروش) - شهریور روز ، جشن شهریورگان';
break;
case '05 شهریور':
$oc = 'روز بزرگداشت محمد بن زکریای رازی و روز داروسازی';
break;
case '08 شهریور':
$oc = 'روز مبارزه با تروریسم ، انفجار دفتر نخست وزیری به دست منافقان و شهادت مظلومانه رجائی و باهنر (1360 هـ.ش)';
break;
case '10 شهریور':
$oc = 'روز بانکداری اسلامی ، سالروز تصویب قانون عملیات بانکی بدون ربا (1362 هـ.ش) - امضای معاهده تقسیم ایران بین روسیه و انگلیس';
break;
case '11 شهریور':
$oc = 'روز صنعت چاپ - وقوع زلزله بویین زهرا و مرگ بیش از 25 هزار نفر';
break;
case '12 شهریور':
$oc = 'روز مبارزه با استعمار انگلیس';
break;
case '13 شهریور':
$oc = 'روز بزرگداشت ابوریحان بیرونی ، روز تعاون';
break;
case '14 شهریور':
$oc = 'روز اکرام - شهادت آیت الله قدوسی و سرتیب وحید دستجردی (1360 هـ.ش)';
break;
case '17 شهریور':
$oc = 'قیام 17 شهریور و کشتار جمعی به دست ماموران ستم شاهی پهلوی (1357 هـ.ش)';
break;
case '19 شهریور':
$oc = 'وفات آیت الله سید محمود طالقانی اولین امام جمه تهران (1358 ه .ش)';
break;
case '20 شهریور':
$oc = 'شهادت دومین شهید محراب آیت الله مدنی به دست منافقین (1360 هـ.ش)';
break;
case '21 شهریور':
$oc = 'روز سینما';
break;
case '27 شهریور':
$oc = 'روز بزرگداشت شهریار و شعر و ادب فارسی';
break;
case '30 شهریور':
$oc = 'روز گفتگوی تمدنها';
break;
case '31 شهریور':
$oc = 'آغاز جنگ تحمیلی (1359 هـ.ش) - آغاز هفته ی دفاع مقدس';
break;
case '05 مهر':
$oc = 'شکست حصر آبادان در عملیات ثامن الائمه (ع) (1360 هـ.ش)';
break;
case '07 مهر':
$oc = 'روز آتش نشانی و ایمنی';
break;
case '08 مهر':
$oc = 'روز بزرگداشت مولوی';
break;
case '09 مهر':
$oc = 'روز همبستگی با کودکان و نوجوانان فلسطینی';
break;
case '11 مهر':
$oc = 'آغاز به کار نخستین فرستنده تلویزیون ایران';
break;
case '13 مهر':
$oc = 'هجرت حضرت امام خمینی (ره) از عراق به پاریس (1357 هـ.ش) - روز نیروی انتظامی';
break;
case '14 مهر':
$oc = 'روز دامپزشکی';
break;
case '16 مهر':
$oc = 'مهر روز ، جشن مهرگان';
break;
case '20 مهر':
$oc = 'روز بزرگداشت حافظ ، روز ملی کاهش اثرات بلایای طبیعی';
break;
case '21 مهر':
$oc = 'جشن پیروزی کاوه و فریدون';
break;
case '23 مهر':
$oc = 'شهادت پنجمین شهید محراب آیت الله اشرفی اصفحانی (1361 هـ.ش)';
break;
case '24 مهر':
$oc = 'روز پیوند اولیاء و مربیان';
break;
case '26 مهر':
$oc = 'روز تربیت بدنی و ورزش';
break;
case '29 مهر':
$oc = 'روز صادرات';
break;
case '01 آبان':
$oc = 'روز آمار و برنامه‌ریزی';
break;
case '04 آبان':
$oc = 'اعتراض و افشاگری حضرت امام خمینی (ره) علیه پذیرش کاپیتولاسیون (1343 هـ.ش)';
break;
case '07 آبان':
$oc = 'روز کوروش بزرگ';
break;
case '08 آبان':
$oc = 'روز نوجوان';
break;
case '10 آبان':
$oc = 'شهادت آیت الله قاضی طباطبائی اولین شهید محراب به دست منافقین (1358 هـ.ش) - آبان روز ، جشن آبانگان';
break;
case '13 آبان':
$oc = 'تسخیر لانه ی جاسوسی آمریکا به دست دانشجویان (1358 هـ.ش) - روز ملی مبارزه با استکبار جهانی - روز دانش آموز';
break;
case '14 آبان':
$oc = 'روز فرهنگ عمومی';
break;
case '15 آبان':
$oc = 'جشن میانه پاییز';
break;
case '18 آبان':
$oc = 'روز ملی کیفیت';
break;
case '21 آبان':
$oc = 'زادروز نیما یوشیج پدر شعر نو پارسی';
break;
case '24 آبان':
$oc = 'روز کتاب و کتاب خوانی - روز بزرگداشت آیت الله علامه سید محمد حسین طباطبائی (1360 هـ.ش)';
break;
case '01 آذر':
$oc = 'آذر جشن';
break;
case '05 آذر':
$oc = 'روز بسیج مستضعفان ، تشکیل بسیج مستضعفان به فرمان حضرت امام خمینی (ره) (1358 هـ.ش)';
break;
case '07 آذر':
$oc = 'روز نیروی دریایی';
break;
case '09 آذر':
$oc = 'روز بزرگداشت شیخ مفید - آذر روز، جشن آذرگان';
break;
case '10 آذر':
$oc = 'شهادت آیت الله سید حسن مدرس (1316 هـ.ش) - روز مجلس';
break;
case '12 آذر':
$oc = 'تصویب قانون اساسی جمهوری اسلامی ایران (1358 هـ.ش)';
break;
case '13 آذر':
$oc = 'روز بیمه';
break;
case '15 آذر':
$oc = 'روز حسابدار';
break;
case '16 آذر':
$oc = 'روز دانشجو';
break;
case '18 آذر':
$oc = 'معرفی عراق به عنوان مسئول و آغازگر جنگ از سوی سازمان ملل (1370 هـ.ش)';
break;
case '19 آذر':
$oc = 'تشکیل شورای عالی انقلاب فرهنگی به فرمان حضرت امام خمینی (ره) (1363 هـ.ش)';
break;
case '20 آذر':
$oc = 'شهادت آیت الله دستغیب سومین شهید محراب به دست منافقین (1360 هـ.ش)';
break;
case '25 آذر':
$oc = 'روز پژوهش';
break;
case '26 آذر':
$oc = 'روز حمل و نقل';
break;
case '27 آذر':
$oc = 'شهادت آیت الله دکتر محمد مفتح (1358 هـ.ش) - روز وحدت حوزه و دانشگاه';
break;
case '30 آذر':
$oc = 'جشن شب یلدا';
break;
case '01 دی':
$oc = 'روز میلاد خورشید ، جشن خرم روز، نخستین جشن دیگان';
break;
case '05 دی':
$oc = 'سالروز شهادت آشو زرتشت، اَبَراِنسان بزرگ تاریخ - سالروز زمین لرزه ی بم در سال (1382 هـ.ش)';
break;
case '07 دی':
$oc = 'سالروز تشکیل نهضت سواد آموزی (1358 هـ.ق)';
break;
case '08 دی':
$oc = 'دی به آذر روز، دومین جشن دیگان';
break;
case '09 دی':
$oc = 'روز بصیرت و میثاق امت با ولایت (سالروز حماسه ی ملّت در 9 دی پس از فتنه ی 1388 هـ.ش)';
break;
case '13 دی':
$oc = 'درگذشت نیما یوشیج پدر شعر نو پارسی';
break;
case '14 دی':
$oc = 'روز جهاد کشاورزی';
break;
case '15 دی':
$oc = 'روز خانواده - تکریم بازنشستگان - دی به مهر روز، سومین جشن دیگان';
break;
case '17 دی':
$oc = 'درگذشت مشکوک جهان پهلوان تختی';
break;
case '19 دی':
$oc = 'قیام خونین مردم قم (1356 هـ.ش) - آغاز عملیات کربلای 5 (1365 هـ.ش)';
break;
case '20 دی':
$oc = 'شهادت میرزاتقی خان امیر کبیر به دستور ناصرالدین شاه قاجار (1230 هـ.ش)';
break;
case '22 دی':
$oc = 'تشکیل شورای انقلاب به فرمان حضرت امام خمینی (ره) (1357 هـ.ش)';
break;
case '23 دی':
$oc = 'دی به دین روز ، چهارمین جشن دیگان';
break;
case '26 دی':
$oc = 'فرار شاه معدوم (1357 هـ.ش)';
break;
case '29 دی':
$oc = 'روز غزه';
break;
case '01 بهمن':
$oc = 'زادروز فردوسی';
break;
case '02 بهمن':
$oc = 'بهمن روز، جشن بهمنگان';
break;
case '05 بهمن':
$oc = 'جشن نوسره';
break;
case '10 بهمن':
$oc = 'جشن سده';
break;
case '12 بهمن':
$oc = 'بازگشت حضرت امام خمینی (ره) به ایران (1357) - آغاز دهه مبارک فجر انقلاب اسلامی';
break;
case '15 بهمن':
$oc = 'جشن میانه زمستان';
break;
case '18 بهمن':
$oc = 'روز ملی فناوری فضایی';
break;
case '19 بهمن':
$oc = 'روز نیروی هوایی';
break;
case '22 بهمن':
$oc = 'پیروزی انقلاب اسلامی و سقوط نظام شاهنشاهی (1357 هـ.ش) (تعطیل)';
break;
case '29 بهمن':
$oc = 'قیام مردم تبریز به مناسبت چهلمین روز شهادت شهدای قم (1356 هـ.ش) - جشن سپندارمذگان ، روز عشق';
break;
case '05 اسفند':
$oc = 'روز بزرگداشت خواجه نصیر الدین طوسی و روز مهندس - جشن اسفندگان(سپندارمذگان) روز عشق - روز بزرگداشت زمین و بانوان';
break;
case '07 اسفند':
$oc = 'سالروز استقلال کانون وکلای دادگستری و روز وکیل مدافع - سالروز درگذشت علی اکبر دهخدا';
break;
case '08 اسفند':
$oc = 'روز امور تربیتی و تربیت اسلامی';
break;
case '09 اسفند':
$oc = 'روز حمایت از حقوق مصرف کنندگان';
break;
case '14 اسفند':
$oc = 'روز احسان و نیکوکاری - سالروز درگذشت دکتر محمد مصدق';
break;
case '15 اسفند':
$oc = 'روز درختکاری';
break;
case '16 اسفند':
$oc = 'روز وقف';
break;
case '22 اسفند':
$oc = 'روز بزرگداشت شهدا';
break;
case '25 اسفند':
$oc = 'بمباران شیمیایی حلبچه توسط ارتش بعثی عراق (1366 هـ.ق) - روز بزرگداشت پروین اعتصامی - پایان سرایش شاهنامه';
break;
case '29 اسفند':
$oc = 'روز ملی شدن صنعت نفت ایران (1329 هـ.ش) (تعطیل)';
break;
case '30 اسفند':
$oc = 'این روز فقط در سال های کبیسه وجود دارد و معمولاً تعطیل اعلام می گردد';
break;
default:
$oc = '';
}
return $oc;
}

// Ghamari occasions
function ghamari($time) {
switch($time) {
case '01 محرم':
$oc = 'آغاز سال هجری قمری';
break;
case '09 محرم':
$oc = 'تاسوعای حسینی (تعطیل)';
break;
case '10 محرم':
$oc = 'عاشورای حسینی (تعطیل)';
break;
case '11 محرم':
$oc = 'روز تجلیل از اسرا و مفقودان';
break;
case '12 محرم':
$oc = 'شهادت حضرت امام زین العابدین (ع) (95 هـ.ق)';
break;
case '18 محرم':
$oc = 'تغییر قبله مسلمین از بیت المقدس به مکه معظمه (52 هـ.ق)';
break;
case '25 محرم':
$oc = 'شهادت حضرت امام زین العابدین (ع) (95 هـ.ق) به روایتی';
break;
case '03 صفر':
$oc = 'ولادت حضرت امام محمد باقر (ع) (57 هـ.ق)';
break;
case '07 صفر':
$oc = 'ولادت حضرت امام موسی کاظم (ع) (128 هـ.ق)';
break;
case '20 صفر':
$oc = 'اربعین حسینی (تعطیل)';
break;
case '28 صفر':
$oc = 'رحلت حضرت رسول اکرم (ص) (11 هـ.ق) - شهادت حضرت امام حسن مجتبی (ع) (50 هـ.ق) (تعطیل)';
break;
case '29 صفر':
$oc = 'شهادت حضرت امام رضا (ع) (203 هـ.ق) (تعطیل)';
break;
case '01 ربیع الأول':
$oc = 'هجرت حضرت رسول اکرم (ص) از مکه به مدینه (اول محرم سال هجرت ، مبدا گاه شماری هجری قمری)';
break;
case '08 ربیع الأول':
$oc = 'شهادت حضرت امام حسن عسگری (ع) (260 هـ.ق) و آغاز ولایت حضرت ولی‌عصر(عج)';
break;
case '12 ربیع الأول':
$oc = 'میلاد حضرت رسول اکرم (ص) به روایت اهل سنت (53 سال قبل از هجرت) - آغاز هفته ی وحدت';
break;
case '17 ربیع الأول':
$oc = 'میلاد حضرت رسول اکرم (ص) (53 سال قبل از هجرت) - میلاد حضرت امام جعفر صادق (ع) (تعطیل)';
break;
case '08 ربیع الآخر':
$oc = 'ولادت حضرت امام حسن عسگری (ع) (232 هـ.ق)';
break;
case '10 ربیع الآخر':
$oc = 'وفات حضرت معصومه (س) (201 هـ.ق)';
break;
case '05 جمادى الأولى':
$oc = 'ولادت حضرت زینب (س) (5 هـ.ق) - روز پرستار';
break;
case '13 جمادى الأولى':
$oc = 'شهادت حضرت فاطمه زهرا (س) (11 هـ.ق) به روایتی';
break;
case '03 جمادى الآخرة':
$oc = 'شهادت حضرت فاطمه زهرا (س) (11 هـ.ق) (تعطیل)';
break;
case '20 جمادى الآخرة':
$oc = 'ولادت حضرت فاطمه زهرا (س) (8 سال قبل از هجرت) - روز زن';
break;
case '01 رجب':
$oc = 'ولادت حضرت امام محمد باقر (ع) (57 هـ.ق)';
break;
case '03 رجب':
$oc = 'شهادت امام علی النقی الهادی (ع) (254 هـ.ق)';
break;
case '10 رجب':
$oc = 'ولادت حضرت امام محمد تقی (ع) (جواد الائمه) (195 هـ.ق)';
break;
case '13 رجب':
$oc = 'ولادت حضرت امام علی (ع) (23 سال قبل از هجرت) - روز پدر - آغاز ایام البیض (اعتکاف) (تعطیل)';
break;
case '15 رجب':
$oc = 'وفات حضرت زینب (س) (62 هـ.ق)';
break;
case '25 رجب':
$oc = 'شهادت امام موسی کاظم (ع) (183 هـ.ق)';
break;
case '27 رجب':
$oc = 'مبعث رسول اکرم (ص) (13 سال قبل از هجرت) (تعطیل)';
break;
case '03 شعبان':
$oc = 'ولادت حضرت امام حسین (ع) (4 هـ.ق) - روز پاسدار';
break;
case '04 شعبان':
$oc = 'ولادت حضرت ابوالفضل (ع) (26 هـ.ق) - روز جانباز';
break;
case '05 شعبان':
$oc = 'ولادت حضرت امام زین العابدین (ع) (381 هـ.ق)';
break;
case '11 شعبان':
$oc = 'ولادت حضرت علی اکبر (ع) (33 هـ.ق) - روز جوان';
break;
case '15 شعبان':
$oc = 'ولادت حضرت قائم (عج) (255 هـ.ق) - روز جهانی مستضعفان - جشن نیمه شعبان (تعطیل)';
break;
case '10 رمضان':
$oc = 'وفات حضرت خدیجه (س) (3 سال قبل از هجرت)';
break;
case '15 رمضان':
$oc = 'ولادت حضرت امام حسن مجتبی (ع) (3 هـ.ق)';
break;
case '18 رمضان':
$oc = 'شب قدر';
break;
case '19 رمضان':
$oc = 'ضربت خوردن حضرت علی (ع) (40 هـ.ق)';
break;
case '20 رمضان':
$oc = 'شب قدر';
break;
case '21 رمضان':
$oc = 'شهادت حضرت علی (ع) (40 هـ.ق) (تعطیل)';
break;
case '22 رمضان':
$oc = 'شب قدر';
break;
case '01 شوال':
$oc = 'عید سعید فطر (تعطیل)';
break;
case '25 شوال':
$oc = 'شهادت حضرت امام جعفر صادق (ع) (148 هـ.ق) (تعطیل)';
break;
case '01 ذو القعدة':
$oc = 'ولادت حضرت معصومه (س) (173 هـ.ق) - روز دختر';
break;
case '11 ذو القعدة':
$oc = 'ولادت حضرت امام رضا (ع) (148 هـ.ق)';
break;
case '30 ذو القعدة':
$oc = 'شهادت حضرت امام محمد تقی (ع) (جواد الائمه)';
break;
case '01 ذو الحجة':
$oc = 'سالروز ازدواج حضرت علی (ع) و حضرت فاطمه (س) (2 هـ.ق) - روز ازدواج و خانواده';
break;
case '07 ذو الحجة':
$oc = 'شهادت حضرت امام محمد باقر (ع) (114 هـ.ق)';
break;
case '10 ذو الحجة':
$oc = 'عید سعید قربان (تعطیل)';
break;
case '15 ذو الحجة':
$oc = 'ولادت امام علی النقی الهادی (ع) (212 هـ.ق)';
break;
case '18 ذو الحجة':
$oc = 'عید سعید غدیر خم (10 هـ.ق) (تعطیل)';
break;
case '24 ذو الحجة':
$oc = 'روز مباهله پیامبر اسلام (ص)';
break;
default:
$oc = '';
}
return $oc;
}
?>
این واسه مناسبت هاست
خیلی ممنون
در صورت آشنایی با بحث آرایه ها در PHP این توابع هم مانند روش قبلی می توانید فراخوانی کنید:
$result = occasion(date('Y-m-d'), 'Asia/Tehran');
if($result){
$miladi = $result['miladi'];
$shamsi = $result['shamsi'];
$ghamari = $result['ghamari'];

echo 'Miladi: ' . $miladi . ' Shamsi: ' . $shamsi . ' Ghamari: ' . $ghamari;
} else {
echo 'False!';
}
در اینجا ما تاریخ امروز سرور را به عنوان آرگیومنت تابع تنظیم کرده ایم.
سعیدی
۰۳:۵۸ ۱۴۰۳/۰۲/۲۱
دست شما درد نکنه
وقتی اینطوری تغییر میدم و به class می نویسم کار نمی کنه و ارور میده
حذف شد
چند ایراد در کدهای شما وجود دارد:
- تگ های PHP را یا باید در یک تگ خلاصه کنید یا در دو تگ بنویسید، روش شما به این صورت اشتباه است:
<?php
//code
.
<?php
//code
.
?>
روش صحیح:
<?php
//code
.
?>
<?php
//code
.
?>
یا
<?php
//code
.
//code
.
?>
- برای تبدیل توابع عادی به کلاس باید تمام توابع مرتبط هم در کدها تبدیل و هر کجا فراخوانی شده اند به شیوه کلاس فراخوانی شوند، به فرض در حالت عادی:
<?php
function test_1(){
echo test_2();
}

function test_2(){
return 'hello! i am test_2!';
}

test_1();
?>
در حالت کلاس:
<?php
class MyClass {
public static function test_1(){
echo MyClass::test_2();
}

public static function test_2(){
return 'hello! i am test_2!';
}
}

MyClass::test_1();
?>
در کدهای شما توابع درونی و فراخوانی آنها در توابع دیگر به صورت کلاس بازنویسی نشده اند.
سعیدی
۱۸:۳۱ ۱۴۰۳/۰۲/۲۲
سلام
می تونید اینو اصلاح کنید؟
چون من با توضیحات شما یاد نگرفتم
<?php
class MyOccasion {
public static function occasion($time = false, $time_zone = 'Asia/Tehran') {
$occasion = array();
@date_default_timezone_set($time_zone); // Set Time Zone

$time = ($time !== false and !is_int($time)) ? strtotime($time) : (($time !== false) ? $time : time());

$_func = array('miladi', 'shamsi', 'ghamari');
foreach($_func as $func) {
$_date = MyOccasion::timeToDate($time, $func);
$date = explode('-', $_date);

$_month = (int)$date[1];
$_time = str_pad($date[2], 2, 0, STR_PAD_LEFT) . ' ' . MyOccasion::_month($_month, $func);
$occasion[$func] = call_user_func('MyOccasion::' . $func, $_time);
}

return $occasion;
}

public static function _month($month = 1, $dateType = 'shamsi') {
$_month = (int)$month;
switch($_month) {
case 1:
$month = 'فروردین';
if($dateType == 'miladi')
$month = 'January';
else if($dateType == 'ghamari')
$month = 'محرم';
break;
case 2:
$month = 'اردیبهشت';
if($dateType == 'miladi')
$month = 'February';
else if($dateType == 'ghamari')
$month = 'صفر';
break;
case 3:
$month = 'خرداد';
if($dateType == 'miladi')
$month = 'March';
else if($dateType == 'ghamari')
$month = 'ربیع الأول';
break;
case 4:
$month = 'تیر';
if($dateType == 'miladi')
$month = 'April';
else if($dateType == 'ghamari')
$month = 'ربیع الآخر';
break;
case 5:
$month = 'مرداد';
if($dateType == 'miladi')
$month = 'May';
else if($dateType == 'ghamari')
$month = 'جمادى الأولى';
break;
case 6:
$month = 'شهریور';
if($dateType == 'miladi')
$month = 'June';
else if($dateType == 'ghamari')
$month = 'جمادى الآخرة';
break;
case 7:
$month = 'مهر';
if($dateType == 'miladi')
$month = 'July';
else if($dateType == 'ghamari')
$month = 'رجب';
break;
case 8:
$month = 'آبان';
if($dateType == 'miladi')
$month = 'August';
else if($dateType == 'ghamari')
$month = 'شعبان';
break;
case 9:
$month = 'آذر';
if($dateType == 'miladi')
$month = 'September';
else if($dateType == 'ghamari')
$month = 'رمضان';
break;
case 10:
$month = 'دی';
if($dateType == 'miladi')
$month = 'October';
else if($dateType == 'ghamari')
$month = 'شوال';
break;
case 11:
$month = 'بهمن';
if($dateType == 'miladi')
$month = 'November';
else if($dateType == 'ghamari')
$month = 'ذو القعدة';
break;
case 12:
$month = 'اسفند';
if($dateType == 'miladi')
$month = 'December';
else if($dateType == 'ghamari')
$month = 'ذو الحجة';
break;
default:
$month = 'فروردین';
}
return $month;
}

public static function timeToDate($time, $dateType = 'shamsi') {
$y = date('Y', $time);
$m = date('m', $time);
$d = date('d', $time);

$_date = date('Y-m-d', $time);
if($dateType == 'shamsi')
$_date = MyOccasion::gregorianToJalali($y, $m, $d);
else if($dateType == 'ghamari')
$_date = MyOccasion::gregorianToGhamari($y, $m, $d);

return $_date;
}

public static function gregorianToJalali($year, $month, $day) {
$g_d_m = array(0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334);
$jy = ($year <= 1600) ? 0 : 979;
$year -= ($year <= 1600) ? 621 : 1600;
$gy2 = ($month > 2) ? ($year + 1) : $year;
$days = (365 * $year) + ((int)(($gy2 + 3) / 4)) - ((int)(($gy2 + 99) / 100)) + ((int)(($gy2 + 399) / 400)) - 80 + $day + $g_d_m[$month - 1];
$jy += 33 * ((int)($days / 12053));
$days %= 12053;
$jy += 4 * ((int)($days / 1461));
$days %= 1461;
$jy += (int)(($days - 1) / 365);
if($days > 365)
$days = ($days - 1) % 365;
$jm = ($days < 186) ? 1 + (int)($days / 31) : 7 + (int)(($days - 186) / 30);
$jd = 1 + (($days < 186) ? ($days % 31) : (($days - 186) % 30));
return $jy . '-' . $jm . '-' . $jd;
}

public static function gregorianToGhamari($year, $month, $day) {
if($year > 1582 or ($year == 1581 and $month > 9 and $day > 14)) {
$int1 = (int)(($month - 14) / 12);
$jd = (int)((1461 * ($year + 4800 + $int1)) / 4) + (int)((367 * ($month - 2 - (12 * ($int1)))) / 12) - (int)((3 * ((int)(($year + 4900 + $int1) / 100))) / 4) + $day - 32075;
} else
$jd = (367 * $year) - (int)((7 * ($year + 5001 + (int)(($month - 9) / 7))) / 4) + (int)((275 * $month) / 9) + $day + 1729777;

$l = $jd - 1948440 + 10632;
$n = (int)(($l - 1) / 10631);
$l = $l - 10631 * $n + 354;
$j = (((int)((10985 - $l) / 5316)) * ((int)((50 * $l) / 17719))) + (((int)($l / 5670)) * ((int)((43 * $l) / 15238)));
$l = $l - ((int)((30 - $j) / 15)) * ((int)((17719 * $j) / 50)) - ((int)($j / 16)) * ((int)((15238 * $j) / 43)) + 29;
$month = (int)((24 * $l) / 709);
$day = $l - (int)((709 * $month) / 24);
$year = (30 * $n) + $j - 30;
return $year . '-' . $month . '-' . $day;
}

public static function miladi($time) {
switch($time) {
case '01 January':
$oc = 'جشن آغاز سال نو میلادی';
break;
case '01 February':
$oc = 'روز جهانی حجاب (روز همبستگی با بانوان محجّبه)';
break;
case '11 February':
$oc = 'تولد توماس ادیسون - حمله به سفارت روسیه و قتل گریبایدوف سفیر روسیه تزاری در ایران';
break;
case '12 February':
$oc = 'زادروز چارلز داروین بنیانگذار نظریه‌ی فرگشت از طریق انتخاب طبیعی';
break;
case '21 February':
$oc = 'روز جهانی زبان مادری - درگذشت فردریک بانتینگ کاشف انسولین';
break;
case '08 March':
$oc = 'روز جهانی زن';
break;
case '14 March':
$oc = 'تولد آلبرت انیشتین';
break;
case '22 March':
$oc = 'روز جهانی آب';
break;
case '23 March':
$oc = 'روز جهانی هواشناسی';
break;
case '27 March':
$oc = 'روز جهانی تئاتر';
break;
case '07 April':
$oc = 'روز سلامتی (روز جهانی بهداشت)';
break;
case '22 April':
$oc = 'روز جهانی زمین';
break;
case '29 April':
$oc = 'روز جهانی روانشناس و مشاور';
break;
case '01 May':
$oc = 'روز جهانی کار و کارگر';
break;
case '05 May':
$oc = 'روز جهانی ماما';
break;
case '08 May':
$oc = 'روز جهانی صلیب سرخ و هلال احمر';
break;
case '15 May':
$oc = 'روز جهانی خانواده';
break;
case '17 May':
$oc = 'روز جهانی ارتباطات';
break;
case '18 May':
$oc = 'روز جهانی موزه و میراث فرهنگی';
break;
case '21 May':
$oc = 'روز جهانی توسعه فرهنگی';
break;
case '31 May':
$oc = 'روز جهانی بدون دخانیات';
break;
case '04 June':
$oc = 'درگذشت ماری کوری کاشف پولونیم و رادیوم';
break;
case '05 June':
$oc = 'روز جهانی محیط زیست';
break;
case '10 June':
$oc = 'روز جهانی صنایع دستی';
break;
case '14 June':
$oc = 'روز جهانی اهدای خون';
break;
case '17 June':
$oc = 'روز جهانی بیابان زدایی';
break;
case '26 June':
$oc = 'روز جهانی مبارزه با مواد مخدر';
break;
case '01 August':
$oc = 'روز جهانی شیر مادر';
break;
case '13 August':
$oc = 'روز جهانی چپ دست ها';
break;
case '21 August':
$oc = 'روز جهانی مسجد';
break;
case '30 August':
$oc = 'تولد ارنست رادفورد، فیزیکدان انگلیسی و پدر انرژی هسته ای';
break;
case '02 September':
$oc = 'وقوع آتش سوزی بزرگ لندن';
break;
case '10 September':
$oc = 'روز جهانی پیشگیری از خودکشی';
break;
case '11 September':
$oc = 'حمله به برج ‌های دوقلوی مرکز تجارت جهانی';
break;
case '12 September':
$oc = 'روز گرامیداشت برنامه نویسان';
break;
case '21 September':
$oc = 'روز جهانی صلح';
break;
case '26 September':
$oc = 'ارائه نظریه نسبیت خاص توسط آلبرت انیشتین';
break;
case '27 September':
$oc = 'روز جهانی جهانگردی';
break;
case '29 September':
$oc = 'روز جهانی دریا نوردی';
break;
case '30 September':
$oc = 'روز جهانی ناشنوایان - روز جهانی ترجمه و مترجم';
break;
case '01 October':
$oc = 'روز جهانی سالمندان';
break;
case '05 October':
$oc = 'روز جهانی معلم';
break;
case '08 October':
$oc = 'روز جهانی کودک';
break;
case '09 October':
$oc = 'روز جهانی پست';
break;
case '14 October':
$oc = 'روز جهانی استاندارد';
break;
case '15 October':
$oc = 'روز جهانی نابینایان (عصای سفید)';
break;
case '16 October':
$oc = 'روز جهانی غذا';
break;
case '17 October':
$oc = 'روز جهانی ریشه کنی فقر';
break;
case '18 October':
$oc = 'درگذشت توماس ادیسون';
break;
case '21 October':
$oc = 'اختراع لامپ برق توسط توماس ادیسون';
break;
case '29 October':
$oc = 'روز جهانی بزرگداشت کورش کبیر';
break;
case '04 November':
$oc = 'تولد فردریک بانتینگ کاشف انسولین';
break;
case '07 November':
$oc = 'تولد ماری کوری کاشف پولونیم و رادیوم';
break;
case '17 November':
$oc = 'روز جهانی فلسفه';
break;
case '25 November':
$oc = 'ارائه نظریه نسبیت عام توسط آلبرت انیشتین - روز جهانی مبارزه با خشونت علیه زنان';
break;
case '01 December':
$oc = 'روز جهانی مبارزه با ایدز';
break;
case '03 December':
$oc = 'روز جهانی معلولان';
break;
case '07 December':
$oc = 'روز جهانی هواپیمایی';
break;
case '20 December':
$oc = 'زادروز دیوید بوهم فیزیک دان مشهور آمریکایی';
break;
case '25 December':
$oc = 'میلاد حضرت مسیح (ع) - جشن کریسمس';
break;
default:
$oc = '';
}
return $oc;
}

public static function shamsi($time) {
switch($time) {
case '01 فروردین':
$oc = 'آغاز نوروز (تعطیل)';
break;
case '02 فروردین':
$oc = 'عید نوروز - تهاجم ماموران پهلوی به مدرسه فیضیه قم (1342هـ.ش) - آغاز عملیات فتح المبین (1361هـ.ش) (تعطیل)';
break;
case '03 فروردین':
$oc = 'عید نوروز (تعطیل)';
break;
case '04 فروردین':
$oc = 'عید نوروز (تعطیل)';
break;
case '06 فروردین':
$oc = 'روز امید ، روزشادباش نویسی - زادروز آشو زرتشت، اَبَراِنسان بزرگ تاریخ';
break;
case '10 فروردین':
$oc = 'جشن آبانگاه';
break;
case '12 فروردین':
$oc = 'روز جمهوری اسلامی ایران (تعطیل)';
break;
case '13 فروردین':
$oc = 'روز طبیعت - جشن سیزده به در (تعطیل)';
break;
case '17 فروردین':
$oc = 'سروش روز ، جشن سروشگان';
break;
case '19 فروردین':
$oc = 'شهادت آیت الله سید محمد باقر صدر و خواهر ایشان بنت الهدی توسط حکومت بعث عراق (1359هـ.ش) - فروردین روز ، جشن فروردینگان';
break;
case '20 فروردین':
$oc = 'روز ملّی فن آوری هسته ای';
break;
case '21 فروردین':
$oc = 'روز هنر انقلاب اسلامی ، شهادت امیر سپهبد علی سیاد شیرازی (1378هـ.ش)';
break;
case '25 فروردین':
$oc = 'روز بزرگداشت عطار نیشابوری';
break;
case '29 فروردین':
$oc = 'روز ارتش جمهوری اسلامی و نیروی زمینی';
break;
case '01 اردیبهشت':
$oc = 'روز بزرگداشت سعدی';
break;
case '02 اردیبهشت':
$oc = 'تاسیس سپاه پاسداران انقلاب اسلامی (1358هـ.ش) - سالروز اعلام انقلاب فرهنگی (1359هـ.ش) - جشن گیاه آوری ، روز زمین پاک';
break;
case '03 اردیبهشت':
$oc = 'روز بزرگداشت شیخ بهایی - روز ملی کار آفرینی';
break;
case '04 اردیبهشت':
$oc = 'آغاز به کار نخستین فرستنده عمومی رادیویی در ایران به نام «رادیو تهران»';
break;
case '05 اردیبهشت':
$oc = 'شکست حمله ی نظامی آمریکا با ایران در طبس (1359هـ.ش)';
break;
case '09 اردیبهشت':
$oc = 'روز شوراها';
break;
case '10 اردیبهشت':
$oc = 'روز ملی خلیج فارس - آغاز عملیات بیت المقدس (1361هـ.ش) - جشن چهل ام نوروز';
break;
case '11 اردیبهشت':
$oc = 'انتشار نخستین روزنامه در ایران به نام «کاغذ اخبار» توسط «میرزا صالح شیرازی»';
break;
case '12 اردیبهشت':
$oc = 'شهادت استاد مرتضی مطهری (1358هـ.ش) روز معلم';
break;
case '15 اردیبهشت':
$oc = 'روز بزرگداشت شیخ صدوق - جشن میانه بهار ، جشن بهاربد - روز شیراز';
break;
case '17 اردیبهشت':
$oc = 'روز اسناد ملی و میراث مکتوب';
break;
case '24 اردیبهشت':
$oc = 'لغو امتیاز تنباکو به فتوای آیت الله میرزا حسن شیرازی (1270)';
break;
case '25 اردیبهشت':
$oc = 'روز بزرگداشت فردوسی';
break;
case '27 اردیبهشت':
$oc = 'روز ارتباطات و روابط عمومی';
break;
case '28 اردیبهشت':
$oc = 'روز بزرگداشت حکیم عمر خیام';
break;
case '01 خرداد':
$oc = 'روز بهره وری و بهینه سازی مصرف - روز بزرگداشت ملاصدرا';
break;
case '03 خرداد':
$oc = 'فتح خرمشهر در عملیات بیت المقدس ( 1361 هـ.ش) - روز مقاومت ایثار و پیروزی';
break;
case '04 خرداد':
$oc = 'روز مقاومت و پایداری - روز دزفول';
break;
case '06 خرداد':
$oc = 'خرداد روز ، جشن خردادگان';
break;
case '14 خرداد':
$oc = 'رحلت امام خمینی (ره) رهبر کبیر انقلاب و بنیانگذار جمهوری اسلامی ایران (1368 هـ.ش) - انتخاب آیت الله خامنه ای به رهبری (1368 هـ.ش) (تعطیل)';
break;
case '15 خرداد':
$oc = 'قیام خونین 15 خرداد (1342 هـ.ش) (تعطیل)';
break;
case '20 خرداد':
$oc = 'شهادت آیت الله سعیدی به دست مأموران ستم شاهی (1349 هـ.ش)';
break;
case '25 خرداد':
$oc = 'روز ملی گل و گیاه';
break;
case '27 خرداد':
$oc = 'روز جهاد کشاورزی';
break;
case '29 خرداد':
$oc = 'درگذشت دکتر علی شریعتی (1356 هـ.ش)';
break;
case '30 خرداد':
$oc = 'انفجار در حرم حضرت امام رضا (ع) به دست ایادی امریکا (1373 هـ.ش)';
break;
case '31 خرداد':
$oc = 'روز بسیج اساتید و شهادت دکتر مصطفی چمران (1360 هـ.ش)';
break;
case '01 تیر':
$oc = 'روز تبلیغ و اطلاع رسانی دینی ، سالروز صدور فرمان امام خمینی (ره) مبنی بر تاسیس سازمان تبلیغات اسلامی (1360 هـ.ش) - روز اصناف - جشن آب پاشونک و آغاز تابستان';
break;
case '07 تیر':
$oc = 'شهادت مظلومانه ی آیت الله دکتر بهشتی و 72 تن از یاران امام خمینی (ره) با انفجار بمب منافقان در دفتر مرکزی حزب جمهوری اسلامی (1360 هـ.ش) - روز قوه ی قضائیه';
break;
case '08 تیر':
$oc = 'روز مبارزه با سلاح های شیمیایی و میکروبی';
break;
case '10 تیر':
$oc = 'روز صنعت و معدن';
break;
case '11 تیر':
$oc = 'شهادت آیت الله صدوقی چهارمین شهید محراب به دست منافقان (1361 هـ.ش)';
break;
case '12 تیر':
$oc = 'حمله به هواپیمای مسافربری جمهوری اسلامی ایران توسط ناوگان آمریکای جنایتکار (1368 هـ.ش)';
break;
case '13 تیر':
$oc = 'سالروز درگذشت دکتر معین - تیر روز ، جشن تیرگان';
break;
case '14 تیر':
$oc = 'روز قلم ، تولد حضرت امام خمینی (ره)';
break;
case '15 تیر':
$oc = 'جشن خام خواری';
break;
case '16 تیر':
$oc = 'روز مالیات';
break;
case '21 تیر':
$oc = 'روز عفاف و حجاب (سالروز قیام مردم مشهد علیه کشف حجاب و کشتار مسجد گوهرشاد توسّط مأموران حکومت رضاخان) (1314 هـ.ش)';
break;
case '25 تیر':
$oc = 'روز بهزیستی و تامین اجتماعی';
break;
case '27 تیر':
$oc = 'اعلام پذیرش قطعنامه 598 شورای امنیت از سوی ایران (1368 هـ.ش)';
break;
case '05 مرداد':
$oc = 'سالروز عملیات افتخار آفرین مرصاد (1367 هـ.ش)';
break;
case '06 مرداد':
$oc = 'روز ترویج آموزش های فنی و حرفه ای';
break;
case '07 مرداد':
$oc = 'مرداد روز ، جشن مردادگان';
break;
case '08 مرداد':
$oc = 'روز بزرگداشت شیخ شهاب الدین سهروردی';
break;
case '10 مرداد':
$oc = 'جشن چله تابستان';
break;
case '14 مرداد':
$oc = 'صدور فرمان مشروطیت';
break;
case '16 مرداد':
$oc = 'تشکیل جهاد دانشگاهی (1359 هـ.ش)';
break;
case '17 مرداد':
$oc = 'روز خبرنگار';
break;
case '28 مرداد':
$oc = 'سالروز کودتای 28 مرداد علیه دولت دکتر محمد مصدق - کودتای آمریکا برای باز گرداندن شاه (1332 هـ.ش) - سالروز فاجعه آتش زدن سینما رکس آبادان';
break;
case '30 مرداد':
$oc = 'روز بزرگداشت علامه مجلسی';
break;
case '01 شهریور':
$oc = 'روز بزرگداشت بوعلی سینا و روز پزشک';
break;
case '02 شهریور':
$oc = 'آغاز هفته دولت';
break;
case '04 شهریور':
$oc = 'روز کارمند - زادروز داراب (کوروش) - شهریور روز ، جشن شهریورگان';
break;
case '05 شهریور':
$oc = 'روز بزرگداشت محمد بن زکریای رازی و روز داروسازی';
break;
case '08 شهریور':
$oc = 'روز مبارزه با تروریسم ، انفجار دفتر نخست وزیری به دست منافقان و شهادت مظلومانه رجائی و باهنر (1360 هـ.ش)';
break;
case '10 شهریور':
$oc = 'روز بانکداری اسلامی ، سالروز تصویب قانون عملیات بانکی بدون ربا (1362 هـ.ش) - امضای معاهده تقسیم ایران بین روسیه و انگلیس';
break;
case '11 شهریور':
$oc = 'روز صنعت چاپ - وقوع زلزله بویین زهرا و مرگ بیش از 25 هزار نفر';
break;
case '12 شهریور':
$oc = 'روز مبارزه با استعمار انگلیس';
break;
case '13 شهریور':
$oc = 'روز بزرگداشت ابوریحان بیرونی ، روز تعاون';
break;
case '14 شهریور':
$oc = 'روز اکرام - شهادت آیت الله قدوسی و سرتیب وحید دستجردی (1360 هـ.ش)';
break;
case '17 شهریور':
$oc = 'قیام 17 شهریور و کشتار جمعی به دست ماموران ستم شاهی پهلوی (1357 هـ.ش)';
break;
case '19 شهریور':
$oc = 'وفات آیت الله سید محمود طالقانی اولین امام جمه تهران (1358 ه .ش)';
break;
case '20 شهریور':
$oc = 'شهادت دومین شهید محراب آیت الله مدنی به دست منافقین (1360 هـ.ش)';
break;
case '21 شهریور':
$oc = 'روز سینما';
break;
case '27 شهریور':
$oc = 'روز بزرگداشت شهریار و شعر و ادب فارسی';
break;
case '30 شهریور':
$oc = 'روز گفتگوی تمدنها';
break;
case '31 شهریور':
$oc = 'آغاز جنگ تحمیلی (1359 هـ.ش) - آغاز هفته ی دفاع مقدس';
break;
case '05 مهر':
$oc = 'شکست حصر آبادان در عملیات ثامن الائمه (ع) (1360 هـ.ش)';
break;
case '07 مهر':
$oc = 'روز آتش نشانی و ایمنی';
break;
case '08 مهر':
$oc = 'روز بزرگداشت مولوی';
break;
case '09 مهر':
$oc = 'روز همبستگی با کودکان و نوجوانان فلسطینی';
break;
case '11 مهر':
$oc = 'آغاز به کار نخستین فرستنده تلویزیون ایران';
break;
case '13 مهر':
$oc = 'هجرت حضرت امام خمینی (ره) از عراق به پاریس (1357 هـ.ش) - روز نیروی انتظامی';
break;
case '14 مهر':
$oc = 'روز دامپزشکی';
break;
case '16 مهر':
$oc = 'مهر روز ، جشن مهرگان';
break;
case '20 مهر':
$oc = 'روز بزرگداشت حافظ ، روز ملی کاهش اثرات بلایای طبیعی';
break;
case '21 مهر':
$oc = 'جشن پیروزی کاوه و فریدون';
break;
case '23 مهر':
$oc = 'شهادت پنجمین شهید محراب آیت الله اشرفی اصفحانی (1361 هـ.ش)';
break;
case '24 مهر':
$oc = 'روز پیوند اولیاء و مربیان';
break;
case '26 مهر':
$oc = 'روز تربیت بدنی و ورزش';
break;
case '29 مهر':
$oc = 'روز صادرات';
break;
case '01 آبان':
$oc = 'روز آمار و برنامه‌ریزی';
break;
case '04 آبان':
$oc = 'اعتراض و افشاگری حضرت امام خمینی (ره) علیه پذیرش کاپیتولاسیون (1343 هـ.ش)';
break;
case '07 آبان':
$oc = 'روز کوروش بزرگ';
break;
case '08 آبان':
$oc = 'روز نوجوان';
break;
case '10 آبان':
$oc = 'شهادت آیت الله قاضی طباطبائی اولین شهید محراب به دست منافقین (1358 هـ.ش) - آبان روز ، جشن آبانگان';
break;
case '13 آبان':
$oc = 'تسخیر لانه ی جاسوسی آمریکا به دست دانشجویان (1358 هـ.ش) - روز ملی مبارزه با استکبار جهانی - روز دانش آموز';
break;
case '14 آبان':
$oc = 'روز فرهنگ عمومی';
break;
case '15 آبان':
$oc = 'جشن میانه پاییز';
break;
case '18 آبان':
$oc = 'روز ملی کیفیت';
break;
case '21 آبان':
$oc = 'زادروز نیما یوشیج پدر شعر نو پارسی';
break;
case '24 آبان':
$oc = 'روز کتاب و کتاب خوانی - روز بزرگداشت آیت الله علامه سید محمد حسین طباطبائی (1360 هـ.ش)';
break;
case '01 آذر':
$oc = 'آذر جشن';
break;
case '05 آذر':
$oc = 'روز بسیج مستضعفان ، تشکیل بسیج مستضعفان به فرمان حضرت امام خمینی (ره) (1358 هـ.ش)';
break;
case '07 آذر':
$oc = 'روز نیروی دریایی';
break;
case '09 آذر':
$oc = 'روز بزرگداشت شیخ مفید - آذر روز، جشن آذرگان';
break;
case '10 آذر':
$oc = 'شهادت آیت الله سید حسن مدرس (1316 هـ.ش) - روز مجلس';
break;
case '12 آذر':
$oc = 'تصویب قانون اساسی جمهوری اسلامی ایران (1358 هـ.ش)';
break;
case '13 آذر':
$oc = 'روز بیمه';
break;
case '15 آذر':
$oc = 'روز حسابدار';
break;
case '16 آذر':
$oc = 'روز دانشجو';
break;
case '18 آذر':
$oc = 'معرفی عراق به عنوان مسئول و آغازگر جنگ از سوی سازمان ملل (1370 هـ.ش)';
break;
case '19 آذر':
$oc = 'تشکیل شورای عالی انقلاب فرهنگی به فرمان حضرت امام خمینی (ره) (1363 هـ.ش)';
break;
case '20 آذر':
$oc = 'شهادت آیت الله دستغیب سومین شهید محراب به دست منافقین (1360 هـ.ش)';
break;
case '25 آذر':
$oc = 'روز پژوهش';
break;
case '26 آذر':
$oc = 'روز حمل و نقل';
break;
case '27 آذر':
$oc = 'شهادت آیت الله دکتر محمد مفتح (1358 هـ.ش) - روز وحدت حوزه و دانشگاه';
break;
case '30 آذر':
$oc = 'جشن شب یلدا';
break;
case '01 دی':
$oc = 'روز میلاد خورشید ، جشن خرم روز، نخستین جشن دیگان';
break;
case '05 دی':
$oc = 'سالروز شهادت آشو زرتشت، اَبَراِنسان بزرگ تاریخ - سالروز زمین لرزه ی بم در سال (1382 هـ.ش)';
break;
case '07 دی':
$oc = 'سالروز تشکیل نهضت سواد آموزی (1358 هـ.ق)';
break;
case '08 دی':
$oc = 'دی به آذر روز، دومین جشن دیگان';
break;
case '09 دی':
$oc = 'روز بصیرت و میثاق امت با ولایت (سالروز حماسه ی ملّت در 9 دی پس از فتنه ی 1388 هـ.ش)';
break;
case '13 دی':
$oc = 'درگذشت نیما یوشیج پدر شعر نو پارسی';
break;
case '14 دی':
$oc = 'روز جهاد کشاورزی';
break;
case '15 دی':
$oc = 'روز خانواده - تکریم بازنشستگان - دی به مهر روز، سومین جشن دیگان';
break;
case '17 دی':
$oc = 'درگذشت مشکوک جهان پهلوان تختی';
break;
case '19 دی':
$oc = 'قیام خونین مردم قم (1356 هـ.ش) - آغاز عملیات کربلای 5 (1365 هـ.ش)';
break;
case '20 دی':
$oc = 'شهادت میرزاتقی خان امیر کبیر به دستور ناصرالدین شاه قاجار (1230 هـ.ش)';
break;
case '22 دی':
$oc = 'تشکیل شورای انقلاب به فرمان حضرت امام خمینی (ره) (1357 هـ.ش)';
break;
case '23 دی':
$oc = 'دی به دین روز ، چهارمین جشن دیگان';
break;
case '26 دی':
$oc = 'فرار شاه معدوم (1357 هـ.ش)';
break;
case '29 دی':
$oc = 'روز غزه';
break;
case '01 بهمن':
$oc = 'زادروز فردوسی';
break;
case '02 بهمن':
$oc = 'بهمن روز، جشن بهمنگان';
break;
case '05 بهمن':
$oc = 'جشن نوسره';
break;
case '10 بهمن':
$oc = 'جشن سده';
break;
case '12 بهمن':
$oc = 'بازگشت حضرت امام خمینی (ره) به ایران (1357) - آغاز دهه مبارک فجر انقلاب اسلامی';
break;
case '15 بهمن':
$oc = 'جشن میانه زمستان';
break;
case '18 بهمن':
$oc = 'روز ملی فناوری فضایی';
break;
case '19 بهمن':
$oc = 'روز نیروی هوایی';
break;
case '22 بهمن':
$oc = 'پیروزی انقلاب اسلامی و سقوط نظام شاهنشاهی (1357 هـ.ش) (تعطیل)';
break;
case '29 بهمن':
$oc = 'قیام مردم تبریز به مناسبت چهلمین روز شهادت شهدای قم (1356 هـ.ش) - جشن سپندارمذگان ، روز عشق';
break;
case '05 اسفند':
$oc = 'روز بزرگداشت خواجه نصیر الدین طوسی و روز مهندس - جشن اسفندگان(سپندارمذگان) روز عشق - روز بزرگداشت زمین و بانوان';
break;
case '07 اسفند':
$oc = 'سالروز استقلال کانون وکلای دادگستری و روز وکیل مدافع - سالروز درگذشت علی اکبر دهخدا';
break;
case '08 اسفند':
$oc = 'روز امور تربیتی و تربیت اسلامی';
break;
case '09 اسفند':
$oc = 'روز حمایت از حقوق مصرف کنندگان';
break;
case '14 اسفند':
$oc = 'روز احسان و نیکوکاری - سالروز درگذشت دکتر محمد مصدق';
break;
case '15 اسفند':
$oc = 'روز درختکاری';
break;
case '16 اسفند':
$oc = 'روز وقف';
break;
case '22 اسفند':
$oc = 'روز بزرگداشت شهدا';
break;
case '25 اسفند':
$oc = 'بمباران شیمیایی حلبچه توسط ارتش بعثی عراق (1366 هـ.ق) - روز بزرگداشت پروین اعتصامی - پایان سرایش شاهنامه';
break;
case '29 اسفند':
$oc = 'روز ملی شدن صنعت نفت ایران (1329 هـ.ش) (تعطیل)';
break;
case '30 اسفند':
$oc = 'این روز فقط در سال های کبیسه وجود دارد و معمولاً تعطیل اعلام می گردد';
break;
default:
$oc = '';
}
return $oc;
}

public static function ghamari($time) {
switch($time) {
case '01 محرم':
$oc = 'آغاز سال هجری قمری';
break;
case '09 محرم':
$oc = 'تاسوعای حسینی (تعطیل)';
break;
case '10 محرم':
$oc = 'عاشورای حسینی (تعطیل)';
break;
case '11 محرم':
$oc = 'روز تجلیل از اسرا و مفقودان';
break;
case '12 محرم':
$oc = 'شهادت حضرت امام زین العابدین (ع) (95 هـ.ق)';
break;
case '18 محرم':
$oc = 'تغییر قبله مسلمین از بیت المقدس به مکه معظمه (52 هـ.ق)';
break;
case '25 محرم':
$oc = 'شهادت حضرت امام زین العابدین (ع) (95 هـ.ق) به روایتی';
break;
case '03 صفر':
$oc = 'ولادت حضرت امام محمد باقر (ع) (57 هـ.ق)';
break;
case '07 صفر':
$oc = 'ولادت حضرت امام موسی کاظم (ع) (128 هـ.ق)';
break;
case '20 صفر':
$oc = 'اربعین حسینی (تعطیل)';
break;
case '28 صفر':
$oc = 'رحلت حضرت رسول اکرم (ص) (11 هـ.ق) - شهادت حضرت امام حسن مجتبی (ع) (50 هـ.ق) (تعطیل)';
break;
case '29 صفر':
$oc = 'شهادت حضرت امام رضا (ع) (203 هـ.ق) (تعطیل)';
break;
case '01 ربیع الأول':
$oc = 'هجرت حضرت رسول اکرم (ص) از مکه به مدینه (اول محرم سال هجرت ، مبدا گاه شماری هجری قمری)';
break;
case '08 ربیع الأول':
$oc = 'شهادت حضرت امام حسن عسگری (ع) (260 هـ.ق) و آغاز ولایت حضرت ولی‌عصر(عج)';
break;
case '12 ربیع الأول':
$oc = 'میلاد حضرت رسول اکرم (ص) به روایت اهل سنت (53 سال قبل از هجرت) - آغاز هفته ی وحدت';
break;
case '17 ربیع الأول':
$oc = 'میلاد حضرت رسول اکرم (ص) (53 سال قبل از هجرت) - میلاد حضرت امام جعفر صادق (ع) (تعطیل)';
break;
case '08 ربیع الآخر':
$oc = 'ولادت حضرت امام حسن عسگری (ع) (232 هـ.ق)';
break;
case '10 ربیع الآخر':
$oc = 'وفات حضرت معصومه (س) (201 هـ.ق)';
break;
case '05 جمادى الأولى':
$oc = 'ولادت حضرت زینب (س) (5 هـ.ق) - روز پرستار';
break;
case '13 جمادى الأولى':
$oc = 'شهادت حضرت فاطمه زهرا (س) (11 هـ.ق) به روایتی';
break;
case '03 جمادى الآخرة':
$oc = 'شهادت حضرت فاطمه زهرا (س) (11 هـ.ق) (تعطیل)';
break;
case '20 جمادى الآخرة':
$oc = 'ولادت حضرت فاطمه زهرا (س) (8 سال قبل از هجرت) - روز زن';
break;
case '01 رجب':
$oc = 'ولادت حضرت امام محمد باقر (ع) (57 هـ.ق)';
break;
case '03 رجب':
$oc = 'شهادت امام علی النقی الهادی (ع) (254 هـ.ق)';
break;
case '10 رجب':
$oc = 'ولادت حضرت امام محمد تقی (ع) (جواد الائمه) (195 هـ.ق)';
break;
case '13 رجب':
$oc = 'ولادت حضرت امام علی (ع) (23 سال قبل از هجرت) - روز پدر - آغاز ایام البیض (اعتکاف) (تعطیل)';
break;
case '15 رجب':
$oc = 'وفات حضرت زینب (س) (62 هـ.ق)';
break;
case '25 رجب':
$oc = 'شهادت امام موسی کاظم (ع) (183 هـ.ق)';
break;
case '27 رجب':
$oc = 'مبعث رسول اکرم (ص) (13 سال قبل از هجرت) (تعطیل)';
break;
case '03 شعبان':
$oc = 'ولادت حضرت امام حسین (ع) (4 هـ.ق) - روز پاسدار';
break;
case '04 شعبان':
$oc = 'ولادت حضرت ابوالفضل (ع) (26 هـ.ق) - روز جانباز';
break;
case '05 شعبان':
$oc = 'ولادت حضرت امام زین العابدین (ع) (381 هـ.ق)';
break;
case '11 شعبان':
$oc = 'ولادت حضرت علی اکبر (ع) (33 هـ.ق) - روز جوان';
break;
case '15 شعبان':
$oc = 'ولادت حضرت قائم (عج) (255 هـ.ق) - روز جهانی مستضعفان - جشن نیمه شعبان (تعطیل)';
break;
case '10 رمضان':
$oc = 'وفات حضرت خدیجه (س) (3 سال قبل از هجرت)';
break;
case '15 رمضان':
$oc = 'ولادت حضرت امام حسن مجتبی (ع) (3 هـ.ق)';
break;
case '18 رمضان':
$oc = 'شب قدر';
break;
case '19 رمضان':
$oc = 'ضربت خوردن حضرت علی (ع) (40 هـ.ق)';
break;
case '20 رمضان':
$oc = 'شب قدر';
break;
case '21 رمضان':
$oc = 'شهادت حضرت علی (ع) (40 هـ.ق) (تعطیل)';
break;
case '22 رمضان':
$oc = 'شب قدر';
break;
case '01 شوال':
$oc = 'عید سعید فطر (تعطیل)';
break;
case '25 شوال':
$oc = 'شهادت حضرت امام جعفر صادق (ع) (148 هـ.ق) (تعطیل)';
break;
case '01 ذو القعدة':
$oc = 'ولادت حضرت معصومه (س) (173 هـ.ق) - روز دختر';
break;
case '11 ذو القعدة':
$oc = 'ولادت حضرت امام رضا (ع) (148 هـ.ق)';
break;
case '30 ذو القعدة':
$oc = 'شهادت حضرت امام محمد تقی (ع) (جواد الائمه)';
break;
case '01 ذو الحجة':
$oc = 'سالروز ازدواج حضرت علی (ع) و حضرت فاطمه (س) (2 هـ.ق) - روز ازدواج و خانواده';
break;
case '07 ذو الحجة':
$oc = 'شهادت حضرت امام محمد باقر (ع) (114 هـ.ق)';
break;
case '10 ذو الحجة':
$oc = 'عید سعید قربان (تعطیل)';
break;
case '15 ذو الحجة':
$oc = 'ولادت امام علی النقی الهادی (ع) (212 هـ.ق)';
break;
case '18 ذو الحجة':
$oc = 'عید سعید غدیر خم (10 هـ.ق) (تعطیل)';
break;
case '24 ذو الحجة':
$oc = 'روز مباهله پیامبر اسلام (ص)';
break;
default:
$oc = '';
}
return $oc;
}
}

$result = MyOccasion::occasion(date('Y-m-d'), 'Asia/Tehran');
if($result) {
$miladi = @$result['miladi'];
$shamsi = @$result['shamsi'];
$ghamari = @$result['ghamari'];

echo 'Miladi: ' . $miladi . ' Shamsi: ' . $shamsi . ' Ghamari: ' . $ghamari;
} else {
echo 'False!';
}
?>
خیلی ممنون اگه یکبار اصلاح کنید واسه بعد یاد می گیرم
کد بالا به شیوه کلاس شی گراء اصلاح شد، غیر از مباحث قبل نکات آموزشی جدیدی هم در تبدیل توابع به کلاس در کد بالا وجود دارد که باید در جای خود آموزش داده شود، به طور مثال در قسمت مربوط به
call_user_func
در اینجا تبدیل به نحو دیگری اعمال شده که مشخص است.
همان طور که می بینید ویرایش کدهای طولانی کار زمانبری است و معمولا توسط ما انجام نمی شود، این مورد صرفا جهت نمونه و آشنایی بیشتر انجام شد.
نکته 1: نام کلاس را عینا با نام یکی از توابع شبیه انتخاب نکنید.
نکته 2: با توجه به تاریخ روز ممکن است مناسبتی در تقویم وجود نداشته باشد و لذا در خروجی چیزی چاپ نمی شود.
پرتو
۲۳:۲۷ ۱۴۰۳/۰۳/۰۱
سلام خوبید؟ بلاکفا باز دچار مشکل شده یا فقط برای من دچار مشکل شده؟ منظورم اینکه خیلی دیر باز میشه و فقط برای فایرفاکس هم اینطوره ببخشید مشکلش چیه دقیقا برای گوگل کرومم اینطوری نیست و سرعتش خوبه ولی نمی دونم دقیقا مشکلش چی ممنون میشم راهنمایی بفرمایید مرسی
طبق تست ما هم بارگذاری سایت بلاگفا گاها اختلال دارد که اشکال می تواند از سرورهای این سایت یا از ارتباط اینترنت کشور باشد، در هر دو حالت متاسفانه کاری نمی شود کرد.
پرتو
۲۲:۵۴ ۱۴۰۳/۰۳/۰۹
سلام خوبین؟ خسته نباشید یه سوال من منوی سمت راست قالبم نوشته هاش چسبیده به بردر باید چیکار کنم که درست شه؟ یعنی منظورم اینکه دوست دارم فاصله داشته باشه تا بردر margin رو در قسمت
#sidebar
تغییر میدادم میشد ولی الان هر چی تغییر میدم نمیشه اگر متوجه نمیشید عکس بفرستم براتون ممنونم منتظر پاسخ شما هستم
لطفا آدرس وبلاگ را جهت بررسی درج کنید، برای ایجاد حاشیه داخلی از ویژگی padding استفاده می کنیم.
پرتو
۲۳:۵۵ ۱۴۰۳/۰۳/۱۳
سلام خوبید؟ خسته نباشید ببخشید مزاحم میشم ممنون از جوابتون راستش بعضی وقتا از بس سوالاتم زیاده روم نمیشه ازتون بپرسم مثل امشب که چیکار کنم سوالمه ببخشید سوالم اینکه من یi موس بی سیم دارم ولی وقتی به لپتاپ وصل می کنم کار نمی کنه باتریش سالمه و چراغشم روشن میشه حتی اینقدر باهاش ور رفتم که تازگیا یه خورده چراغ دانگلش هم کار میکنه الان قبلا کار نمی کرد بعد الان وصل میشه پیدا می کنه ولی قطع میشه نمی دونم دقیقا مشکل از چیه از دانگله یا لپتاپ به هر حال این موسش حرکت نمی کنه روی لپتاپ و میخواستم بپرسم که یعنی بگم فکنم دانگلم لقه و بخاطر همین کار نمی کنه می خواستم بپرسم شما یعنی مدلش xp-product هستش می خواستم بپرسم شماره تلفن نمایندگی xp رو ندارین یا نمی دونید از کجا پیدا کنم ممنون میشم بگید چیکار کنم که درست شه ممنون میشم راهنمایی بفرمایید مرسی موسمم قدیمیه
ببینید سوال شما مربوط به سخت افزاره و حوزه فعالیت این سایت در خصوص وب و برنامه نویسی هست!، شما باید این موارد را از سایت های مرتبط با حوزه سخت افزار و ایرادات فنی پیگیری کنید، متاسفانه یادداشت شما به دلیل غیر مرتبط بودن به موضوع سایت پس از مدت زمانی به صورت خودکار حذف میشه.
more لطفا پیش از ارسال دیدگاه نکات زیر را مد نظر داشته باشید:
- به سوالات کلی، زمانبر، مبهم و مشکلاتی که تلاشی برای رفع آنها نکرده باشید پاسخ مختصر داده شده یا به بخش برنامه نویسی اختصاصی ارجاع داده می شوند.
- کدها و اسکریپت های طولانی را ترجیحا در یک صفحه وب آنلاین یا به صورت حساب موقت و آزمایشی قرار دهید تا امکان بررسی دقیق مشکل و خطایابی میسر باشد.
- تمام دیدگاه های ارسالی خوانده شده و برای هر کاربر مدت زمان لازم جهت پاسخگویی در نظر گرفته می شود، لطفا از طرح سوالات متعدد در بازه زمانی کوتاه خودداری کنید.



 refresh
10 × 10
9 × 9
20 × 20
=
آخرین دیدگاه ها
more برای دسترسی سریع به یادداشت مربوطه می توانید از لینک مطلب در کادر زیر استفاده کنید.
پرتو
سلام خوبید؟ خسته نباشید ببخشید مزاحم میشم ممنون از جوابتون راستش بعضی وقتا از بس سوالاتم زیاده روم نمیشه ازتون بپرسم مثل امشب که چیکار...
۱۴۰۳/۰۳/۱۳

پرتو
سلام خوبین؟ خسته نباشید یه سوال من منوی سمت راست قالبم نوشته هاش چسبیده به بردر باید چیکار کنم که درست شه؟ یعنی منظورم اینکه...
۱۴۰۳/۰۳/۰۹

پرتو
سلام خوبید؟ بلاکفا باز دچار مشکل شده یا فقط برای من دچار مشکل شده؟ منظورم اینکه خیلی دیر باز میشه و فقط برای فایرفاکس هم...
۱۴۰۳/۰۳/۰۱

سعیدی
سلام می تونید اینو اصلاح کنید؟ چون من با توضیحات شما یاد نگرفتم خیلی ممنون اگه یکبار اصلاح کنید واسه بعد یاد...
۱۴۰۳/۰۲/۲۲

سعیدی
دست شما درد نکنه وقتی اینطوری تغییر میدم و به class می نویسم کار نمی کنه و ارور میده
۱۴۰۳/۰۲/۲۱

سعیدی
دست شما درد نکنه خیلی خوب بود این یکی رو چطوری فراخوانی کنم؟ این واسه مناسبت هاست خیلی ممنون
۱۴۰۳/۰۲/۱۹

سعیدی
با سلام آیا می شه این تابع رو بصورت class نوشت؟ میخوام وقتی کد ملی میدم با این تابع فراخوانی بشه و شهر...
۱۴۰۳/۰۲/۱۹

پرتو
مگه شما دارین اموزشش رو؟ آدرسش رو میزارید؟ یا اگر سایتی رو میشناسید که آموزش داده باشه معرفی کنید ممنون میشم من خیلی گشتم توی...
۱۴۰۳/۰۲/۱۸

پــرتو
سلام خوبید ؟ خسته نباشید گوشی پدرم شیاومی هست ایمیلمو ثبت کردم داخلش بعد می خواستم حذفش کنم نمیشد می گفت همه داده های توی...
۱۴۰۳/۰۲/۱۶

vip
خیلی ممنونم از شما خیلی عالی شد میشه مثل تبلیغ بلاگفا باشه یعنی زیر صفحه نمایش داده بشه و صفحه رو سیاه نکنه که تا...
۱۴۰۳/۰۲/۰۵

vip
با سلام و خسته نباشید استاد چند وقت پیش این کد رو از شما گرفتم این کد خیلی خوبه و کاربر رو هم...
۱۴۰۳/۰۲/۰۴

پـــرتو
سلام خسته نباشید شرمنده مزاحم میشم یه سوال داشتم می خواستم بپرسم که چرا بلاگفا باز نمیشه برام؟ کلا هر وبلاگی که مربوط به بلاگفا...
۱۴۰۳/۰۲/۰۲
  در انتظار بررسی: ۰
 پاسخگویی به سوالات ممکن است تا ۲۴ ساعت زمان ببرد.