Estimado, tus preguntas me hacen acordar al diálogo entre el Gato y Alicia del País de las Maravillas, donde Alicia le dice algo como
Alicia: "¿cual camino debo tomar?"
Gato: "¿A donde quieres ir?"
Alicia: "No importa mucho a donde"
Gato: "Entonces no importa el camino que elijas"
Similar es tu explicación, ejemplo y pregunta posterior de "¿cómo paso un objeto por parámetros?"
Ya lo estás haciendo, solo que no tienes claro hacia donde quieres ir. Técnicamente es lo mismo que cuando pasas cualquier variable por parámetros, no hay diferencia.
Te doy otro ejemplo más simple y gráfico:
Código PHP:
class Cajon
{
}
class Puerta
{
}
class Armario
{
private $_elementos = array();
public function agregar($elemento)
{
$this->_elementos[] = $elemento;
}
}
$miArmario = new Armario();
$miArmario->agregar(new Puerta());
$miArmario->agregar(new Puerta());
$miArmario->agregar(new Cajon());
Bueno, este objeto Armario tiene dos puertas y un cajón, todos son objetos y paso por parámetros los elementos que necesito para construir un objeto más grande a partir de otros.
¿Se entiende la idea?