کتابخانه مدیریت تاریخ‌ها در PHP

  • بوسیله: محسن شفیعی
  • در 1395/04/07 - 17:39
  • نظرات (6)
PHP – پی اچ پی

PHP – پی اچ پی

تبدیل تاریخ‌های شمسی و میلادی به یکدیگر همیشه یکی از دغدغه‌های برنامه نویسان ایرانی است. در پی اچ پی کتابخانه‌های بسیار خوبی برای تبدیل انواع تاریخ مانند jdate وجود دارند، اما همانطور که گفته شد بیشتر این کتابخانه‌ها تنها برای تبدیل تاریخ نوشته شده‌اند و راهکاری برای مدیریت تاریخ و زمان ارائه ندادند. این یکی از دلایلی بود که ما شروع به نوشتن کتابخانه‌ی جدیدی برای مدیریت تاریخ و زمان گرفتیم. هدف ما از این کتابخانه ارائه دادن APIهای مشابه کتابخانه معروف Carbon است.

(بیشتر…)

PHP 7 – تعریف نوع بازگشتی

  • بوسیله: محسن شفیعی
  • در 1394/10/05 - 7:53
  • نظرات (5)
PHP 7

PHP 7

معمولاً تمام برنامه نویسان آشنایی، حداقل جزئی با زبان C یا موارد مشابه دارند. در این زبان‌ها شما باید مقدار بازگشتی تابع را مشخص کنید و تابع نیز باید دقیقاً مقداری از همان نوع را بازگشت بدهد، در غیر اینصورت با خطای زمان اجرا مواجه خواهید شد.

حالا شاید تعجب کنید که این ویژگی نیز به PHP 7 اضافه شده است، یعنی شما میتوانید نوع مقادیر توابع یا متدها را مشخص کنید، که در اینصورت موظف می‌شوید که مقداری از همان نوع را برگردانید.
از طرفی به یاد داشته باشید که این ویژگی کاملاً اختیاری است و شما مجبور به استفاده نیستید، یعنی هنوز هم میتوانید در یک تابع مقادیر مختلفی را بازگشت بدهید.

(بیشتر…)

کلمات کلیدی در PHP 7

  • بوسیله: محسن شفیعی
  • در 1394/08/18 - 21:02
  • نظرات (7)
PHP 7

PHP 7

هر زبان برنامه نویسی دارای کلمات رزرو شده‌ایی است که، برنامه نویس مجاز به استفاده از آن‌ها در کدنویسی نیست که زبان PHP هم از این قائده مستثنا نیست. زبان PHP حدود 64 کلمه کلیدی دارد که کلمات بسیار خوبی که برای نام گذاری متدهای کلاس میتواند انتخاب شود، در آن‌ها وجود دارد، بنابراین برنامه نویس از آن‌ها نمی‌تواند استفاده کند. این کلمات مانند or, and, new, list, use و کلمات دیگر.

اما در PHP 7 شما میتوانید از این کلمات نیز در کدنویسی خود استفاده کنید.

(بیشتر…)

PHP 7 – کلاس‌های anonymous

  • بوسیله: محسن شفیعی
  • در 1394/08/04 - 21:17
  • نظرات (5)
Get ready for PHP 7

Get ready for PHP 7

ویژگی جدیدی که به PHP7 اضافه شده است، کلاس‌های anonymous یا کلاس‌های ناشناس هستند. این نوع از کلاس‌ها مانند توابع ناشناس هستند که در PHP با عنوان Closure شناخته می‌شوند.

معمولا زمان‌هایی از کلاس‌های ناشناس استفاده می‌کنیم که یک کلاس نیازی به مستند کردن ندارد، و یا کلاس، تنها یکبار در طول اجرای برنامه مورد استفاده واقع می‌شود.

تنها تفاوت کلاس anonymous با کلاس‌های معمول در PHP، نداشتن اسم است.

(بیشتر…)

PHP 7

  • بوسیله: محسن شفیعی
  • در 1394/07/17 - 14:51
  • نظرات (15)
Get ready for PHP 7

Get ready for PHP 7

نوشتن یک مقدمه خوب برای معرفی PHP 7 کمی سخت است. امکانات بسیار خوبی به این نسخه از PHP اضافه شده است که همه برنامه نویسان PHP را هیجان‌زده می‌کند.

ابتدا بیایید ببینیم که چه زمانی، باید منتظر آمدن اولین نسخه پایدار از PHP 7 باشیم. خب جامعه توسعه‌دهنده PHP، شش نسخه RC تا قبل از آمدن نسخه پایدار را برنامه‌ریزی کرده‌اند که تا به اینجا چهار نسخه آن منتشر شده است و نسخه نهایی PHP 7 را برای روز 12 نوامبر مصادف با 21 آبان برنامه‌ریزی کرده‌اند.

ما هم در آپارنت سعی می‌کنیم که تا قبل از 21 آبان تمام ویژگی‌هایی که به PHP 7 اضافه شده است را به صورت جزئی بررسی کنیم، مطمئناً نظرات شما، کمک بسیار خوبی به ما به سرانجام رسیدن این سری از مطالب است.
در این مطلب ابتدا میخواهیم در مورد Performance یا کارایی PHP 7 و سپس در مورد Operator یا عملگر جدیدی که به PHP 7 اضافه شده است صحبت کنیم.
در ادامه مطلب همراه ما باشید…

(بیشتر…)

خلاصی از دردسر Prefixها در CSS

  • بوسیله: محسن شفیعی
  • در 1394/05/02 - 0:21
  • نظرات (2)
CSS3

CSS3

در زبان CSS همیشه باید بررسی کنیم که کدی که در حال نوشتن هستیم، در تمام مرورگرها به درستی کار کند، بعضی مواقع واقعاً موجب دردسر هستند!

اما راهکار بسیار ساده‌ایی برای رهایی از نوشتن Prefixها در CSS وجود دارد، به این صورت که ما کد استاندارد را مینویسیم، و کد مخصوص مرورگرهای مختلف را بوسیله برنامه Autoprefixer تولید میکنیم.

(بیشتر…)

Interface در PHP

  • بوسیله: محسن شفیعی
  • در 1394/04/04 - 5:40
  • نظرات (7)
PHP – پی اچ پی

PHP – پی اچ پی

یکی از مباحث شی گرایی در زبان‌های برنامه نویسی مبحث Interfaceها است. interface ممکن است در نگاه اول چندان ارزشی برای ما نداشته باشد و ما ممکن است نتوانیم استفاده‌ایی در خور توجه از آن بکنیم. اما در این مطلب میخواهیم نگاه دقیقتری به interfaceها داشته باشیم، مخصوصا در زبان PHP، که البته پایه interfaceها در تمام زبان‌ها مشابه است و فقط syntax آن تفاوت دارد.

(بیشتر…)

شروعی جدید

  • بوسیله: محسن شفیعی
  • در 1394/03/29 - 16:15
  • نظرات (27)

به نام خدا

حرف حق، جواب نداره…

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

من از ابتدا هم این کار رو به عنوان یک روش بهش نگاه میکردم، اما فکر میکنم استقبالی از این روش نشه، اما خوبی اینکار این هست که مسئولیت بروزرسانی آپارنت از من به عنوان کسی که آپارنت رو ایجاد کرده برداشته میشه و به روی تمام کاربران و خوانندگان آپارنت می افته.

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

از همه دوستانی که نظر گذاشتن ممنونم و متاسفم! (شوخی) که بگم دوباره آپارنت کارش رو شروع کرده و اینبار شما هستید که باید اون رو بروز نگه دارید.

همچنین بهتره بگم که کلا بخش تبلیغات از آپارنت حذف شده تا سو استفاده ایی صورت نگیره.

 

موفق باشید…

استاندارد PSR-2 در PHP

  • بوسیله: محسن شفیعی
  • در 1394/02/23 - 21:59
  • نظرات (10)
PHP – پی اچ پی

PHP – پی اچ پی

در ادامه آشنایی با استانداردهای PSR، در این مطلب میخواهیم با استاندارد PSR-2 آشنا شویم. این استاندارد به نوعی گسترش استاندارد PSR-1 است.

هدف اصلی این استاندارد این است که سردرگمی شما در زمانی که کدهای دیگران را میبینید کمتر شود، که اینکار با رعایت نکات و استایل های کدنویسی توسط تمام برنامه نویسان PHP قابل انجام است.

استفاده از این استانداردها در تمام پروژه های PHP چه متن باز یا تجاری توصیه می‌شود که باعث هماهنگی بیشتر بین برنامه نویسان خواهد شد.
(بیشتر…)