PHP Getters and Setters
generare getters and setters for php classes
Details
Installs
- Total 57K
- Win 30K
- Mac 12K
- Linux 14K
May 9 | May 8 | May 7 | May 6 | May 5 | May 4 | May 3 | May 2 | May 1 | Apr 30 | Apr 29 | Apr 28 | Apr 27 | Apr 26 | Apr 25 | Apr 24 | Apr 23 | Apr 22 | Apr 21 | Apr 20 | Apr 19 | Apr 18 | Apr 17 | Apr 16 | Apr 15 | Apr 14 | Apr 13 | Apr 12 | Apr 11 | Apr 10 | Apr 9 | Apr 8 | Apr 7 | Apr 6 | Apr 5 | Apr 4 | Apr 3 | Apr 2 | Apr 1 | Mar 31 | Mar 30 | Mar 29 | Mar 28 | Mar 27 | Mar 26 | Mar 25 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Windows | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 1 | 2 | 1 | 1 | 3 | 2 | 0 | 0 | 1 | 1 | 2 | 1 | 0 | 5 | 1 | 0 | 1 | 0 | 0 | 3 | 2 | 3 | 1 | 1 | 0 | 1 | 1 | 2 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 1 |
Mac | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Linux | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 2 | 0 | 0 | 0 | 0 |
Readme
- Source
- raw.githubusercontent.com
PHP Getters and Setters
With PHP Getters and Setters you can automatically generate Getters and Setters for your php classes.
Features:
- Generate Getters, Setters or Both
- Can be applied to all class properties or just to a single one
- Description, Type and Type Hinting automatically discovered from the variable docblock
- fully customizable templates
Usage Instruction:
Generate PHP code
class test { /** * foo container * * @var AbcClass */ private $foo; }
Go to Tools -> PHP Getters and Setter
Getter and Setter will be generated:
class test { /** * foo container * * @var AbcClass */ private $foo; /** * Gets the foo container. * * @return AbcClass */ public function getFoo() { return $this->foo; } /** * Sets the foo container. * * @param AbcClass $foo the foo */ private function _setFoo(AbcClass $foo) { $this->foo = $foo; return $this; } }
As you can see if get to trouble of commenting your variables, the generated functions can be used without modification.
This is an huge time saver!
Usage
Commands available are:
- Generate Getters and Setters
- Generate Getter
- Generate Setter
- Generate Getter for…
- Generate Setter for…
These can be accesed via the context menu (right click on the source of any open PHP file) or the command pallette. The currently open file must be a PHP file.
Settings Reference
ignore_visibility
type : boolean
default : false
description: ignore visibilty for setters generation
registerTemplates
type : array
default: []
description: the user templates to load
template
type : string
default: camelCaseFluent
description: the template to use
type_hint_ignore
type: list of strings
default: [“mixed”, “int”,“integer”, “double”, “float”, “number”, “string”, “boolean”, “bool”, “numeric”, “unknown”]
description: if the property has one of the types listed type hinting will not be used
setter_before_getter
type: boolean
default: false
description: Set to true to generate setter code before getters
Creating your own template
[package-dir] is your package directory.
- Make a directory called
[package-dir]/PHP Getters and Setters
. Put the following in a file at
[package-dir]/PHP Getters and Setters/user_templates.py
. “ class myTemplate(object): name = "myTemplate” style = 'camelCase' # can also be snakeCase getter = “”“ /**- Gets the %(description)s. *
- @return %(type)s */ public function get%(normalizedName)s() { return $this->%(name)s; } ”“”
setter = “”“ /** * Sets the %(description)s. * * @param %(type)s $%(name)s the %(humanName)s * * @return self */ public function set%(normalizedName)s(%(typeHint)s $%(name)s) { $this->%(name)s = $%(name)s; } ”“”
* Edit the parts between setter and getter how you want.
* Edit your user settings for this package. On OSX that's ```Preferences | Package Settings | PHP Getters and Setters | Settings - User```.
* Add the following settings
// user defined templates to load
"registerTemplates" : [ "myTemplate" ],
// the template used to generate code
"template" : "myTemplate",
* restart sublime to use the new template