Eu me vejo criando muitas classes com a estrutura a seguir, então ter um snippet rápido para obter a configuração básica para mim é realmente útil.
Crie um novo snippet e salve-o como ksclass.sublime-snippet
<snippet>
<content><![CDATA[
class ${1:class_name}
{
/**#@+
* Private class variable
*
* @access private
*/
/** Store publicly accessible properties */
private $props = array();
/**#@-*/
/**
* Class constructor
*
* @return bool
*/
public function __construct()
{
return true;
}
/**
* Overload property setter
*
* @param string $key Property key
* @param mixed $value Property value
* @return bool
*/
public function __set($key, $value)
{
$this->props[$key] = $value;
return true;
}
/**
* Overload property getter
*
* @param string $key Property key to retrieve
* @return mixed False if property not set, else property value
*/
public function __get($key)
{
if ( ! isset($this->props[$key]) ) {
return false;
}
return $this->props[$key];
}
}
]]></content>
<tabTrigger>ksclass</tabTrigger>
<scope>source.php</scope>
</snippet>