Req #53229 [Com]: Change of getters and setters

From: Date: Fri, 20 Mar 2015 15:02:39 +0000
Subject: Req #53229 [Com]: Change of getters and setters
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-191487@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
 Comment by:         levim@php.net
 Reported by:        sjors dot vanleeuwen at itsxtreme dot com
 Summary:            Change of getters and setters
 Status:             Duplicate
 Type:               Feature/Change Request
 Package:            Class/Object related
 PHP Version:        Irrelevant
 Block user comment: N
 Private report:     N

 New Comment:

Shoot, wrong window. This is a duplicate of bug #49526.


Previous Comments:
------------------------------------------------------------------------
[2015-03-20 15:01:52] levim@php.net

This is a duplicate of bug #69262

------------------------------------------------------------------------
[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


Thread (6 messages)

« previous php.bugs (#191487) next »