بسم الله الرّحمن الرّحیم
مبدّل تاریخ و زمان
jdf.scr.ir
وَسَخَّرَ لَكُمُ اللَّیْلَ وَالْنَّهَارَ وَالشَّمْسَ وَالْقَمَرَ وَالْنُّجُومُ مُسَخَّرَاتٌ بِأَمْرِهِ إِنَّ فِی ذَلِكَ لَآیَاتٍ لِّقَوْمٍ یَعْقِلُونَ | و شب و روز و خورشید و ماه را برای شما رام گردانید و ستارگان به فرمان او مسخّر شده اند مسلّماً در این [امور] برای مردمی که تعقّل می‏کنند نشانه هاست | سوره ی نحل ، آیه ی 12
آموزش مختصر برای افراد تازه کار

برای این که بتوانیم به راحتی از این نرم افزار استفاده کنیم ، باید با توابع ، پارامترها و کاراکترهایی که در آن به کار رفته است ، آشنا شویم. در ابتدا با اصطلاحاتی که به کار می بریم ، آشنا شوید.

برچسب زمان = TimeStamp
برچسب زمان(Unix) ، یک عدد بر حسب ثانیه است که می توان آن را نوعی شماره ی شناسنامه یا اثر انگشت برای زمان دانست. یعنی هر یک ثانیه که می گذرد ، یک واحد به این عدد اضافه می گردد. امّا این عدد از چه زمانی آغاز به شمارش شده ؟ یعنی چه وقت برابر با 0 بوده ؟ برچسب زمانی که ما اکنون از آن استفاده می کنیم ، از روز 1/1/1970 میلادی ، دقیقاً ساعت 00:00:00 به وقت گرینویچ (GMT) ، شروع به شمارش شده است و از آن زمان تا کنون ، هر 1 ثانیه که می گذرد ، 1 واحد به آن افزوده می شود. به عبارت دیگر می توان گفت ، تعداد ثانیه هایی است که از زمان ذکر شده می گذرد.
امّا این برچسب چه استفاده هایی دارد؟
فرض کنید پلیس راهنمایی و رانندگی ، یک خودرو متخلّف را دیده و می خواهد اطّلاعات آن را ثبت کند. اگر بخواهد برای هر خودرو یک فرم چند صفحه ای را از نام و نام خانوادگی و آدرس و شماره ی تلفن و نوع و رنگ خودرو و ... ، تکمیل کند ، برای هر خودرو ، نیم ساعت وقت لازم دارد. امّا فقط کافیست شماره ی پلاک خودرو را یادداشت کند. با برداشتن همین شماره ی چند رقمی و ورود آن به رایانه ، تمامی اطّلاعات مربوط به خودرو و مالک را در اختیار خواهد داشت.
برچسب زمان هم کاربردی این چنین دارد. مثلاً سایت شما برای ذخیره ی یک مطلب جدید ، لازم نیست یک عبارت طولانی را به عنوان تاریخ ثبت مطلب ، ذخیره کند. مثلاً به جای " جمعه , 22 / بهمن / 1389 - 16:07:53 " ، فقط کافیست برچسب زمانی لحظه ی ثبت مطلب را ذخیره کند. این برچسب ، فقط یک عدد چند رقمی است ، امّا در موقع لزوم می توان با وارد کردن همین عدد کوتاه در توابع مربوطه ، هر نوع قالب دلخواهی از تاریخ و زمان را تحویل گرفت که دقیقاً متعلّق به همان لحظه ای است که برچسب زمان را گرفته اید. مثلاً می توانید ساعت و دقیقه و ثانیه و سال و ماه و روز و اطّلاعات بسیار زیاد دیگری را در مورد آن لحظه دریافت نمایید. می توان گفت ، این عدد کوتاه ، بیش از چندین صفحه اطّلاعات مفید مربوط به همان لحظه را در خود ذخیره کرده است.
برچسب زمانی که در مورد آن توضیح دادیم ، متعلّق به یونیکس است و در پی اچ پی از آن استفاده می گردد. برچسب دیگری هم هست که در جاوا اسکریپت استفاده می شود و سه رقم از برچسب زمانی یونیکس ، بیشتر است. در واقع برحسب هزارم ثانیه است و اگر سه رقم آخر آن را حذف کنید ، برابر با همین برچسب زمان یونیکس خواهد شد.
برای گرفتن عدد برچسب زمانی همین حالا ، می توانید از تابع time استفاده کنید. <?php echo time(); ?>

تابع = Function
توابع موجود در این نرم افزار ، در جدول مربوطه ، فهرست شده اند.
توابع ، اطلاعاتی را از ما می گیرند و طبق تنظیمات ما ، تغییراتی را بر روی آن اطلاعات انجام داده و در خروجی شان به ما پس می دهند. مثلاً تابع gregorian_to_jalali ، شماره ی سال و ماه و روز میلادی را از ما گرفته و در خروجی خود ، شماره ی سال و ماه و روز هجری شمسی را به ما پس می دهد.

پارامتر = Parameter
که البتّه به هنگام فراخوانی ، آرگومان نامیده می شود. امّا برای سهولت یادگیری افراد مبتدی ، در متن آموزش در همه جا به نام پارامتر ذکر می گردد. (پارامتر مجازی است)
پارامتر های هر تابع ، در جدول مربوط به آن ، فهرست شده اند. مثلاً در تابع jdate به صورت زیر است.
jdate('پارامتر پنجم','پارامتر چهارم','پارامتر سوم',' پارامتر دوم','پارامتر اوّل');

پارامترهای اجباری ، پارامترهایی اند که حتماً باید مقداری برایشان وارد شود ، وگرنه تابع دچار مشکل می شود و خروجی ندارد.

پارامترهای اختیاری ، پارامترهایی هستند که می توانید آن ها را وارد نکنید. در صورتی که این پارامترها را وارد نکنید یا خالی '' بگذارید (در این نرم افزار) ، مقدار پیشفرض برای آن پارامتر ، وارد می شود. برای مثال ، در تابع jdate ، مقدار پیشفرض یکی از پارامترها ، 'Asia/Tehran' است. یعنی اگر آن پارامتر را وارد نکنید یا خالی '' بگذارید ، وقت تهران به عنوان پیشفرض وارد می شود.

کاراکتر = character
همان حرف ، عبارت و یا عددی است که در جای پارامترها قرار می دهیم. کاراکترهایی که هر پارامتر از هر تابع می تواند بگیرد ، در توضیحات و جداول مربوطه ، فهرست شده اند.

هر پارامتر یک تابع ، مقادیر خاصی می تواند بگیرد که این مقادیر ، همان کاراکترها هستند. مثلاً پارامتر فلان تابع فلان ، دو کاراکتر 1 و 0 دارد. اگر 1 وارد شود ، فلان تغییر را در خروجی اعمال می کند و اگر 0 وارد شود ، اعمال نمی کند. یا همین تابع jdate که پارامتر اوّل آن ، کاراکترهای زیادی می تواند بگیرد. مثلاً کاراکتر Y بزرگ برای نمایش شماره ی سال کامل و کاراکتر y کوچک برای سال دورقمی یا s برای نمایش ثانیه است.
کاراکتری که در هر پارامتر وارد می کنیم ، تعیین می کند که چه اطلاعاتی از تابع خارج شود و چه تغییراتی بر روی خروجی انجام شود.

استفاده ی ساده
اوّلین قدم برای استفاده از این نرم افزار ، افزودن فایل jdf.php در جایی است که قصد استفاده از آن را دارید.
برای این کار ، فقط کافیست از دستور include یا include_once استفاده کرده و فایل نرم افزار را اضافه نمایید. حال ، تمامی توابع فایل را در دسترس خواهید داشت و می توانید از آن ها استفاده کنید.
در ابتدا برای درک بهتر مطالب ، یک فایل php آزمایشی ایجاد می کنیم ، تا طرز کار با نرم افزار را به خوبی متوجّه شوید. سپس می توانید از آن در فایل های پیچیده تری استفاده کنید.

حالا یک نرم افزار ویرایشگر php را بگشایید. می توانید از نوت پد ویندوز هم استفاده کنید. فقط کافیست از منوی Start به Run رفته و بنویسید: notepad و ok کنید ، تا نوت پد باز شود. سپس کد زیر را در آن بنویسید . چون این صفحه کامل نیست ، سطر اوّل را اضافه کردیم که ربطی php ندارد و آن را را برای نمایش صحیح متون فارسی نوشتیم ، در صفحات کامل html ، موجود است. این سطر را از فایل آزمایشی حذف نکنید.
تمامی کدها و دستورات php که از این به بعد آزمایش می کنیم را در محل مشخّص شده ، به جای عبارت قرمز رنگ ، قرار دهید.

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<? php

include_once('jdf.php');//:افزودن فایل نرم افزار

/* کدهای آزمایشی را در این جا قرار دهید */

echo $out;//:برای نمایش خروجی
?>

و از منوی File بالای نوت پد ، ...Save As را باز کنید. در صفحه ی ذخیره ، مثلاً نام zaman.php را نوشته و نوع فایل را All Files و Encoding آن را UTF-8 ، انتخاب نمایید. سپس فایل را در مکان دلخواهی ذخیره کنید.

فایل jdf.php را در کنار فایل آزمایشی قرار دهید. ( یا در هر مکانی که در includ_once مشخّص می کنید.)
به عنوان اوّلین آزمایش ، متغیّر out$ را اینگونه قرار می دهیم:

$out=jdate('F');//خروجی:// بهمن

عبارتی که نمایش داده خواهد شد ، نام ماه به حروف است. مثلاً: بهمن یا هر ماه دیگری که اکنون در آن قرار داریم. حرف F بزرگ تعیین کرد که خروجی تابع jdate ، نام ماه به حروف باشد. درواقع حرف F بزرگ یکی از کاراکترهای پارامتر اوّل تابع jdate است. این پارامتر ، کاراکترهای دیگری نیز می تواند بگیرد. مثلاً: f کوچک برای نمایش فصل و خیلی از حروف دیگر که هر کدام ، کاربردی متفاوت دارد. امّا چگونه این کاراکترها (حروف) را بیابیم؟ تمامی کاراکترهای پارامتر اوّل تابع jdate را به همراه کاربردشان ، در یک جدول که در همین جا موجود است ، به شما معرّفی خواهند شد.
برای درک بهتر ، به مثال های زیر و خروجی آن ها که به رنگ قرمز مشخّص شده ، توجّه فرمایید. فقط این نکات را به یاد داشته باشید که: 1- بزرگی و کوچکی حروف ، اهمّیّت دارد و می تواند نتیجه را تغییر دهد. 2- خروجی هایی که در اینجاست ، فقط مثال زده شده و در زمان شما ، به وقت خودتان نمایش داده خواهند شد.

/*نکته: اهمّیّت حروف بزرگ و کوچک در دستورات*/
$out=jdate ('V');
//خروجی:هزار و سیصد و هشتاد و نه
$out=jdate('v');//خروجی:هشتاد و نه
$out=jdaTe('V');//پیغام خطا ، چون نام تابع ، به حروف کوچک نیست

/*گرفتن خروجی های مرکّب*/
$out=jdate('H');//خروجی ساعت//10
$out=jdate('i');//خروجی دقیقه//15
$out=jdate('s');//خروجی ثانیه//26
$out=jdate ('H:i:s');//10:15:26//خروجی مرکّب <<<

$out=jdate ('Y');//خروجی سال به عدد//1389
$out=jdate('F');// خروجی ماه به عدد//11
$out=jdate('j');//خروجی روز به عدد//22
$out=jdate('Y / F / j');// 1389 / 11 / 22 //خروجی مرکّب <<<

/* \ خارج کردن بعضی کاراکترها (حروف) به صورت خام و تبدیل نشده با کاراکتر*/
/* منظور از کاراکتر ، تمامی حروف بزرگ و کوچک انگلیسی است که در جدول مربوطه نیز فهرست شده اند */
$out=jdate('i');//خروجی دقیقه//15
$out=jdate('\i');// i //خروجی خام
$out=jdate('i - \i');// 15 - i //خروجی مرکّب دقیقه و خام
$out=jdate('H:i:s _ \i\r\a\n');// 10:15:26 _ iran //: خروجی

اکنون که تا حدودی با این نرم افزار آشنا شده اید ، آموزش های عمومی و جدول های راهنما را مطالعه نموده و با پارامترها و توابع دیگر نیز ، آشنا شوید. کاربرد این توابع ، فقط برای نمایش خروجی ها در صفحات وب نیست ، بلکه استفاده های بسیار متنوّعی دارند. مثلاً می توانید زمان ثبت مطالب سایت یا نظرات بازدیدکنندگان را به تاریخ هجری شمسی و به وقت تهران ، ذخیره کنید. اگر آموزش ها را کاملاً مطالعه نموده و بر این نرم افزار مسلّط شوید ، قادر خواهید بود ابتکارات جدیدی به خرج داده و سرویس های بسیار مفیدی را ابداع کنید. فراموش نکنید که همه از صفر شروع کرده اند ، شما هم می توانید.



نشانی کوتاه این صفحه: