Um construtor seguro em uma classe extensível

Às vezes, quando você estende uma classe que não é sua, em um framework da web, por exemplo, você precisa ter um construtor para sua própria classe. Você não quer apenas colocar um construtor lá, porque se a classe pai tiver um construtor, ele será substituído. Você poderia chamar parent::__construct()com os argumentos corretos, mas em uma versão mais recente da classe pai, a assinatura do construtor pode mudar e você a teria quebrado.

Python tem *argse **kwargspara isso, mas em PHP o mais próximo que encontrei é este:

call_user_func_array(array('parent', '__construct'), func_get_args());