What is the difference between public, private, and protected?
When and why should I use
public
, private
, and protected
functions and variables inside a class? What is the difference between them?
Examples:
// Public
public $variable;
public function doSomething() {
// ...
}
// Private
private $variable;
private function doSomething() {
// ...
}
// Protected
protected $variable;
protected function doSomething() {
// ...
}
Solution :
You use:
public
scope to make that variable/function available from anywhere, other classes and instances of the object.private
scope when you want your variable/function to be visible in its own class only.protected
scope when you want to make your variable/function visible in all classes that extend current class including the parent class.
More: (For comprehensive information)
http://stackoverflow.com/questions/4361553/what-is-the-difference-between-public-private-and-protected
COMMENTS