Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What does "return $this" mean?

I'm trying to understand this code, and when I arrived at the final line, I didn't get it. :(

Can I have your help in order to find out, what does return $this mean ?

public function setOptions(array $options) {     $methods = get_class_methods($this);     foreach ($options as $key => $value) {         $method = 'set' . ucfirst($key);         if (in_array($method, $methods)) {             $this->$method($value);         }     }      //???? - return what ?     return $this; } 

Update:
I've removed my comments for better clarification.

like image 623
MEM Avatar asked May 10 '11 21:05

MEM


1 Answers

This way of coding is called fluent interface. return $this returns the current object, so you can write code like this:

$object   ->function1()   ->function2()   ->function3()   ; 

instead of:

$object->function1(); $object->function2(); $object->function3(); 
like image 150
Maerlyn Avatar answered Oct 03 '22 03:10

Maerlyn