Você já invejou a sintaxe JS para:
(function(){
// some code…
})();
Você pode fazer isso em PHP, este é um exemplo:
call_user_func(function() {
// some code ...
});
Não é exatamente uma auto-invocação, é mais como chamar uma função anônima, mas faz a mesma coisa.
Você pode até incluir algumas variáveis externas por uso ou parâmetros.
Razões para usar:
- Você não quer declarar uma função que só será chamada uma vez
- Você não quer que as variáveis nessa função vão para o namespace global
Comente outros cenários em que você pode usá-lo, ou seja, estou usando isso em um arquivo de bootstrap.