musstest Du das tun?
Natürlich, die Lösung per TE ist die einzig zweckmäßige und wenn es darum geht, redundanten Code zu vermeiden wird man damit gar nichts mehr zu tun haben sondern einfach nur noch eine Funktion aus der eigenen Faktory aufrufen:
$url = $this->create_url($components);
Ich hatte es auf den Fingern, aber hab's mir verkniffen. Mit Gewalt.
Warum sollte sich ein Fachmann seine Antworten in einem Fachforum verkneifen?
MFG