Ich versuche, vsprintf() zu verwenden, um eine formatierte Zeichenfolge auszugeben, aber ich muss überprüfen, dass ich die richtige Anzahl von Argumenten haben, bevor Sie es ausführen, um "Zu wenige Argumente" Fehler zu vermeiden.
Im Wesentlichen denke ich, was ich brauche, ist ein Regex, um die Anzahl der Typ-Bezeichner zu zählen, aber ich bin ziemlich nutzlos, wenn es um Regex kommt und ich konnte es nirgends finden, so dass ich dachte, ich würde SO einen Versuch geben :)
Wenn Ihnen nichts Besseres einfällt, entspricht diese Methode genau dem, was ich will.
function __insertVars($string, $vars = array()) {
$regex = '';
$total_req = count(preg_match($regex, $string));
if($total_req === count($vars)) {
return vsprintf($string, $vars);
}
}
Bitte teilen Sie mir mit, ob Ihnen ein einfacherer Weg einfällt.