ok, la mia funzione potrebbe essere un metodo in una classe, e le mie variabili sarebbero i parametri del metodo. Li passerei così al metodo e alla classe:
$this->id = 0
$this->idp = 0

a parte la differente sintassi tra funzione e classe, in questo caso avrei sempre una query molto complessa a cui passare o meno dei parametri di ricerca.

ps doctrine non lo conosco.