08/04
2016
Routines and methods of suport for classes
Suporte para classes, (*1)
Via composer, (*2)
composer required wiidoo/support
Basta extender sua classe para Wiidoo\Support\FluentInterface
que vocĆŖ tera uma classe usando a metodologia de "Interface fluente"., (*3)
<?php use Wiidoo\Support\FluentInterface; class Example extends FluentInterface { public $foo; public $bar; public $active = false; private $result; public function join(){ $this->result = $this->foo . ' ' . $this->bar; return $this; } public function clear(){ $this->result = ''; return $this; } public function result(){ return $this->result; } }
Com o modelo acima vamos aplicar a classe:, (*4)
$example = new Example(); echo $example->foo('I Love')->bar('coffee.')->join()->result() //saida: 'I love coffee.' $join = $example->foo('I Love')->bar('coffee.')->join(); echo $join->clear()->result(); //saĆda ''
Caso queira modificar uma proprieade boleana, vulgo bool
, basta declara-la para passar true
ou usar um prefixo de negação para declara-la como false
, exemplo, (*5)
$example->active(); dump($example->active); // true; $example->noActive(); dump($example->active); // false;
Esses são os prefixos de negação:, (*6)
no, not, disable, (*7)
/* ... public $active = false; public $published = true; public $alert = true; ... */ $example->active();// true $example->noPublished();// false $example->notPublished();// false $example->disableAlert();// false
Método | Descrição |
---|---|
mergeConfig($name) | Faz um merge de suas propriedades com os valores declaros no arquivo de configuração passado no paramentro $name . Exemplo mergeConfig('app.locate') -> $this->locate. |
validatePropertyChange($name, $protected = false) | Verifica se a propriedade é digna de alteração, por padrão toda propriedade publica pode ser modificada, se passar $protected = true as propriedades protegidas também retornaram true
|