Edit report at http://bugs.php.net/bug.php?id=53229&edit=1
ID: 53229 Updated by: [email protected] Reported by: sjors dot vanleeuwen at itsxtreme dot com Summary: Change of getters and setters -Status: Open +Status: Bogus Type: Feature/Change Request Package: Class/Object related PHP Version: Irrelevant Block user comment: N New Comment: 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. Previous Comments: ------------------------------------------------------------------------ [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 http://bugs.php.net/bug.php?id=53229&edit=1
