Req #53229 [Nab->Dup]: Change of getters and setters
| From: | levim@php.net | Date: | Fri, 20 Mar 2015 15:01:53 +0000 |
| Subject: | Req #53229 [Nab->Dup]: Change of getters and setters | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-191486@lists.php.net to get a copy of this message | ||
Edit report at https://bugs.php.net/bug.php?id=53229&edit=1
ID: 53229
Updated by: levim@php.net
Reported by: sjors dot vanleeuwen at itsxtreme dot com
Summary: Change of getters and setters
-Status: Not a bug
+Status: Duplicate
Type: Feature/Change Request
Package: Class/Object related
PHP Version: Irrelevant
Block user comment: N
Private report: N
New Comment:
This is a duplicate of bug #69262
Previous Comments:
------------------------------------------------------------------------
[2010-11-05 04:37:54] aharvey@php.net
Have a look at the RFC, and if you come up with a patch, feel free to send it to the Internals
mailing list for discussion.
Closing, since this is better dealt with via the RFC/mailing list process than in the bug tracker.
------------------------------------------------------------------------
[2010-11-04 19:07:30] sjors dot vanleeuwen at itsxtreme dot com
Sorry for the 1000000th post of the request and ofcourse thanks for the tips, though not everyone of
them applies to the cause.
Be hoping to see it soon and i might look into creating a patch for it in the meanwhile. Is there
any way i can help developing it for the community?
Kind regards
------------------------------------------------------------------------
[2010-11-04 17:03:42] uramihsayibok at gmail dot com
This is the umpteenth request for this feature. Look at the PHP RFC Wiki
(http://wiki.php.net/rfc), specifically "Property get/set syntax"
(http://wiki.php.net/rfc/propertygetsetsyntax).
Meanwhile, a protip for you:
1. Use a public $a and public $b.
2. Unset the variables in your constructor.
3. Implement __get and __set however you see fit. Example: use protected _getA()
and _setA() methods.
------------------------------------------------------------------------
[2010-11-02 20:44:28] sjors dot vanleeuwen at itsxtreme dot com
Description:
------------
It would be very usefull to have getters in a way like c#.
Example:
Class Test {
private $_a;
private $_b;
public function get a() {
return $this->_a;
}
}
this way the private $_b isn't available to the outside world which is the case with out of the
box __get.
It also (in my opinion) gives your code a much cleaner look and you can do special things if needed
in your functions too.
in the __get function you'll have to make if statements or other checks to get the same result.
You can also just use:
Example:
Class Test {
private $_a;
private $_b;
public function a() {
return $this->_a;
}
}
but then you would have to use:
$test->a() instead of $test->a which gives a wrong assumption that you are calling a function
which you are not, you are calling a property of your object.
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=53229&edit=1