سلام
من این متدها رو اصلا متوجه نمیشم
مثلا چرا توی کد زیر 2تا متد پشت هم صدا زده میشن:
map.getBounds().getNorth();
یعنی چی که متد getNorth داخل getBounds هست؟
مگه میشه یک متد توی یه متد دیگه تعریف کرد؟
سلام دوست عزیز
بله میشه تعریف کرد
زمانی که اون متد شی فعلی رو برگردونه کل متدها برای مجدد صدا زدن در دسترس هستن
به این روش میگن method chaining
جلوتر توی شیگرایی باهاش آشنا میشید
موفق باشید ?
یعنی درواقع چنین چیزی هست : ؟
class map { public function getBounds() { $this->lan = 31.333; $this->lat = 51.555; return $this; } public function getLan() { echo $this->lan; } public function getLat() { echo $this->lat; } }
?کد زیر رو اجرا کنید تا بصورت کلی کانسپت رو درک کنید
در سرفصلهای پیش رو به این مورد پرداخته شده
class MethodChain { public function first() { echo 'first method' . PHP_EOL; return $this; } public function second() { echo 'second method' . PHP_EOL; return $this; } public function third() { echo 'third method' . PHP_EOL; return $this; } } $methodChain = new MethodChain; $methodChain->first()->second()->third();
خروجی به شکل زیر میشه
موفق باشید