کلاس ها در PHP

کلاس ها در PHP

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

کلاس ها در PHP

برای تعریف یک کلاس ها در PHP از کلمه class استفاده میکنیم. این کلاس میتواند شامل خصوصیات مختلف عمومی یا خصوصی باشد. به نحوه معرفی کلاس ها در PHP دقت کنید:

 در این نمونه برای class نامی انتخاب کردیم. همیشه کلاس ها با یک نام مشخص میشوند که بیان کننده هدف ما از طراحی است. در زمان نام گذاری یک کلاس دقت داشته باشید که نام یک کلاس نمی تواند عدد باشد.

پس از معرفی کلاس ها به معرفی خصوصیات می پردازیم. خاصیت ها در واقع متغیرهایی هستند که درون کلاس تعریف میشوند. خصوصیات در کلاس ها را با استفاده از مثال زیر توضیح خواهم داد.

 نام این کلاس Emailer است. همان طور که مشاهده می کنید خصوصیات درون کلاس ها به صورت private مشخص شده اند. private بودن خواص یعنی تنها میتوانید درون کلاس از آن ها استفاده کنید بنابراین باعث افزایش امنیت در برنامه نویسی تعریف اشیا میشود. در برخی کتاب ها یا منبع های دیگر شاید خاصیت ها را با نام “فیلد” نیز مشاهده کنید. در این مثال sender ، $recipients ، $subject و body  خصوصیات کلاس Emailer هستند.

عنصر بعدی که با آن در کلاس های PHP مواجه میشوید، متد ها هستند. متد ها نیز چیز جدیدی نیستند، متد ها همان توابعی هستند که درون کلاس ها در PHP تعریف میشوند. در این مثال ۵ متد داریم. همان طور که مشاهده میکنید متد ها را به صورت public یا عمومی تعریف کرده ایم. یعنی هرگاه در برنامه یک شی ایجاد کنیم، متد ها از طریق شی های مرتبط میتوانند فراخوانی شوند. به عبارت دیگر در صورتی که خصوصی با private باشد تنها درون کلا در دسترس است و از طریق اشیا نمی توانیم به آن متد دسترسی داشته باشیم.

نام گذاری عناصر درون کلاس

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

  • حرف اول عناصر Private کوچک و حروف اول دیگر کلمات درون این عنصر بزرگ باشد مانند :myFirstValue
  • حرف اول تمامی کلمات عناصر public بزرگ و بقیه حروف به صورت کوچک باشد مانند : MyFirstValue

در ادامه آموزش ها، به جزییات بیشتر برنامه نویسی شی گرا خواهم پرداخت

16 نظرات شما

  • حسین

    خرداد ۵, ۱۳۹۳ at ۱۲:۱۸ ب.ظ
    سلام آموزش بسیار خوبیه توی وردپرس مثلا شی wpdb نیاز به ساختن نداره یعنی نیاز نیست بنویسیم new wpdb این اشیاء چجوری هستند؟؟
    • بهاران بنی اسدی

      خرداد ۷, ۱۳۹۳ at ۸:۱۲ ق.ظ
      سلام دوست عزیز در آموزش های بعدی حتما راجع به سوال شما توضیح خواهم داد
  • سهیل

    تیر ۴, ۱۳۹۳ at ۶:۴۲ ب.ظ
    دوست عزیز یه مشکلی تو قالب سایتتون وجود داره ، الان دیدم گفتم اطلاع بدم ، قسمت تاریخ پستتون اشتباه سطحش نوشته شده !
    • بهاران بنی اسدی

      تیر ۷, ۱۳۹۳ at ۱۰:۲۸ ق.ظ
      سلام دوست عزیز، خیلی از توجه شما ممنونم. حتما درستش میکنم
  • علی جوان

    تیر ۲۴, ۱۳۹۳ at ۷:۵۴ ق.ظ
    گرافیك خوبی داریدو تبریك میگم.
  • m.e

    مرداد ۲۶, ۱۳۹۳ at ۷:۱۵ ب.ظ
    سایت بسیار زیبا و خلاقانه ای دارید، من .Net کارم و می خوام php رو از سایت شما یاد بگیرم بسیار ممنون از آموزش
  • rohan

    شهریور ۴, ۱۳۹۳ at ۵:۴۹ ب.ظ
    سلام مای اسکیو ال رو دانلود کنیم یعنی چی؟ باهاش باید چه کنیم؟ لطفا مختصر توضیح بدید
  • A.H.R

    فروردین ۱۴, ۱۳۹۴ at ۱۰:۳۶ ق.ظ
    سلام و خسته نباشید . خیلی وقته منتظر ادامه آموزش هاتون هستیم.
    • بهاران بنی اسدی

      تیر ۱۴, ۱۳۹۴ at ۳:۴۳ ب.ظ
      سلام به زودی آموزش ها را شروع می کنیم.
  • parsian

    اردیبهشت ۱۴, ۱۳۹۴ at ۳:۰۳ ب.ظ
    سلام لطفا در مورد انواع کلاس ها در php و وجه تمایز بین اونها هم توضیح بدید، مثلا کلاس های abstract , interface, extends , implements با تشکر llk,
  • abbas

    تیر ۳, ۱۳۹۴ at ۵:۱۲ ب.ظ
    سلام استایل سایتتون زیباست ولی ریسپانسیو نیسته
  • AmirrezA

    مرداد ۱۳, ۱۳۹۴ at ۲:۱۸ ب.ظ
    سلام. آموزش خوبی بود گرچه بعضی جاهاشو نفهمیدم. میشه ایمیلتونو بدید من سوالامو واستون بفرستم؟ درضمن 13 ساله هستم ولی خیلی علاقه دارم به برنامه نویسی وب. ممنون
    • الهه قنبری

      مرداد ۱۶, ۱۳۹۴ at ۱۰:۴۸ ب.ظ
      سلام! شما به مرور با مطالب بیشتری آشنا می شوید. بهتر است برای یادگیری بیشتر خود کد ها را بنویسید و سوالات خود را در زیر پست مربوط بپرسید! امیدوارم با تلاش بیشتر موفق شوید.
  • AmirrezA

    شهریور ۱۹, ۱۳۹۴ at ۱۲:۰۵ ق.ظ
    باوشه ممنون
  • طراحی سایت آنفایو

    بهمن ۱۱, ۱۳۹۴ at ۱۲:۱۹ ب.ظ
    سلام آموزش مفیدی بود ممنون
  • طراحی سایت

    بهمن ۲۲, ۱۳۹۴ at ۲:۲۱ ق.ظ
    مثل همیشه فوق العاده

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *


© 2013 Mobtadi. All rights reserved.
کلیه حقوق مادی و معنوی برای وبسایت مبتدی محفوظ است.