atVSG

0011001000110100

وحید امیری مطلق

توسعه دهنده وب و موبایل

مثال های استفاده از MongoDB + PHP


mongodb and php

خودم که میخواستم استفاده از MongoDB رو شروع کنم در کمال تعجب دیدم که تقریبا اصلا نمیشه نمونه کد به روز پیدا کرد. وقتی هم میخواید از PHP با MongoDB استفاده کنید کار از این هم سخت تر میشه به خاطر اینکه اکثر کاربران MongoDB از پلتفرم Node.js استفاده میکنند. دلیل دیگش هم اینه که PHP یک درایور قدیمی برای MongoDB داشت که الان پشتیبانی نمیشه و مثال هایی هم که توی وب پیدا میشن هنوز برای درایور جدید به روز نشدند.

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

مشاهده صفحه مثال ها در GitHub


معرفی کلاس های jDateTimePlus و EasyDateTime برای PHP


jDateTimePlus

کلاس jDateTimePlus بر پایه ی نسخه 2.2.0 کلاس jDateTime هست. هدف از نوشتنش برطرف کردن بعضی مشکلات کلاس قبلی و به روز کردن الگوریتم توابع تبدیل شمسی به میلادی و میلادی به شمسی با استفاده از توابع jdf 2.60 بود. کلاس jDateTime توسط سالار کابلی ساخته شده. انصافا کار خوبی کرده و مستندات خوبی هم داره به خاطر همین دیگه من تکرار مکررات نمیکنم و برای نحوه ی استفاده میتونید مستندات سالار رو در وبلاگش بخونید.

صفحه jDateTimePlus در گیت هاب + راهنمای نصب و استفاده

اما برسیم به اصل مطلب. کلاس EasyDateTime!

 

EasyDateTime

 

EasyDateTime در واقع یک کلاس سطح بالا برای مخفی کردن اون پیچیدگی هایی از کلاس jDateTimePlus هست که عملا برای کاربر نهایی استفاده کننده گیج کننده هستن و غیر ضروری. این یک کلاس آماده برای ورورد و استفاده سریع و راحت در اپ های واقعیه. تعداد زیادی از متود های jDateTimePlus پارامتر Timezone رو دریافت میکنن که این کار کاملا بیهوده هست و نیازی بهش نیست. خیلی از متود ها هم تعریف دقیقی از کارکردشون در دنیای واقعی (!) ارائه نمیکنن و مثلا به ندرت به طور مستقیم مورد استفاده قرار میگیرن. این کلاس علاوه بر موارد قبلی، ظاهر بسیار تمیزی داره و همچنین یکی دو متود جدید هم معرفی میکنه که کاملا کاربردی هستن. (تبدیل DateTime شمسی به میلادی و فرمت اون، تبدیل Timezone ها به یکدیگر)

صفحه ی EasyDateTime در گیت هاب + راهنمای نصب و استفاده

توضیحات در ادامه مطلب.