שרשור של מתודות ותכונות ב-PHP

מחבר:
בתאריך:

 

שרשור של תכונות ומתודות ב-PHP מונחה עצמים מאפשר לכתוב PHP הרבה יותר זורם ודומה לשפה אנושית, בדיוק כמו שתכנות מונחה עצמים טוב צריך להיות.

לדוגמה, אנו מעוניינים לקבל את כמות הדלק בטנק דלק של מכונית תוך התחשבות בהפחתת כמות הדלק בטנק כשהמכונית נוסעת, והוספת דלק כשמתדלקים את המכונית.

כדי שזה ייראה אלגנטי נכתוב את זה תוך כדי שרשור מתודות ותכונות, שימו לב לחיצים:

$tank= $car->fill(40)->ride(140)->tank;

במילים: כמה ליטרים דלק יש למכונית לאחר שמולאה ב-40 ליטר דלק ונסעה 140 ק"מ.

כדי שנוכל לבצע שרשור המתודות צריכות להחזיר את האובייקט, ומכיוון שאנו נמצאים בתוך המחלקה המתודות צריכות להחזיר את $this . זה נראה כך:

class Car
{
  public $tank = 0;

  public function ride($km)
  {
    $km = (int)$km;
    $gas = $km/14;
    $this->tank = $this->tank-$gas;

    return $this;
  }

  public function fill($liters)
  {
    $liters = (int)$liters;
    $this->tank = $this->tank+$liters;

    return $this;
  }
}

 

והתוצאה: 30

 

המדריך מבוסס על "The essentials of Object Oriented PHP" שמלמד PHP מונחה עצמים באמצעות דוגמאות ותרגילים הקליקו על התמונה כדי לרכוש את ה-eBook:

eBook cover The essentials of Object Oriented PHP

 

לכל מדריכי ה-PHP מונחה עצמים

הוסף תגובה חדשה

 

= 7 + 9

תמונת המגיב

משה בתאריך: 17.03.2018

תודה!

תמונת המגיב

יוסי בן הרוש בתאריך: 17.03.2018

בשמחה, משה.