Retornando referências
   
    Retorno por referência é útil quando é necessário utilizar uma função
    para localizar variáveis cuja referência precisa ser obtida.
    Não deve ser usado retorno por referência para aumentar desempenho, o
    mecanismo é esperto o bastante para otimizar isso. Referências somente devem ser retornadas
    quando existir uma razão técnica para isso! Para
    retornar referências, a sintaxe abaixo deve ser usada:
    
    Neste exemplo, a propriedade do objeto retornado pela
    função 
getValue precisa ser assimilada, não
    copiada, como acontecerá se não utilizar a sintaxe de referências.
   
   
Nota: 
    
     Diferentemente da passagem de parâmetros por referência, aqui é necessário utilizar
     & em ambos os lugares - primeiro para indicar o
     retorno por referência (e não a cópia), e depois para indicar a
     ligação da referência (em vez da assimilação convencional) que precisa ser
     explícita para $myValue.
    
   
   Nota: 
    
     Se houver tentativa de retornar uma referência de uma função com a sintaxe
     return ($this->value);, isto não
     funcionará como esperado para retornar o resultado de uma
     expressão, e não uma variável, por referência. Deve-se
     retornar variáveis por referência somente para uma função - nada além disso.
    
   
   
   Para utilizar a referência retornada, é necessário utilizar a atribuição por referência:
    
   Nota: 
    
     Se a atribuição for feita sem o símbolo & symbol, por exemplo, $collection = collector();,
     a variável $collection receberá uma cópia do valor, e não a referência retornada pela função.
    
   
   Para passar a referência retornada para outra função que espera uma referência,
   a seguinte sintaxe pode ser utilizada:
    
   
   Nota: 
    
      Note que array_push(&collector(), 'foo');
      não funcionará, e retornará um erro fatal.