PHP PHP preg_replace - Code kürzen

Überkinger

Lieutenant
Registriert
Juli 2010
Beiträge
600
Hallo,

kann ich folgenden Code nochmals kürzen?

PHP:
	$content_htm = preg_replace ("#Montag#si","<b>Montag</b>",$content_htm);
	$content_htm = preg_replace ("#Dienstag#si","<b>Dienstag</b>",$content_htm);
	$content_htm = preg_replace ("#Mittwoch#si","<b>Mittwoch</b>",$content_htm);
	$content_htm = preg_replace ("#Donnerstag#si","<b>Donnerstag</b>",$content_htm);
	$content_htm = preg_replace ("#Freitag#si","<b>Freitag</b>",$content_htm);
	$content_htm = preg_replace ("#Samstag#si","<b>Samstag</b>",$content_htm);
	$content_htm = preg_replace ("#Sonntag#si","<b>Sonntag</b>",$content_htm);
 
da du keine regulären ausdrücke verwenden willst (?), würde es mit dieser methode kürzer gehen:

$phrase = "Sie sollten taeglich Fruechte, Gemuese und Ballaststoffe essen.";
$gesund = array("Fruechte", "Gemuese", "Ballaststoffe");
$lecker = array("Pizza", "Bier", "Eiscreme");

$newphrase = str_replace($gesund, $lecker, $phrase);
 
Code:
$content_htm = preg_replace( '#(montag|dienstag|mittwoch|donnerstag|freitag|samstag|sonntag)#i', '<b>$1</b>', $content_htm );
Ungetestet.
 
Mexxim schrieb:
da du keine regulären ausdrücke verwenden willst (?), würde es mit dieser methode kürzer gehen:

$phrase = "Sie sollten taeglich Fruechte, Gemuese und Ballaststoffe essen.";
$gesund = array("Fruechte", "Gemuese", "Ballaststoffe");
$lecker = array("Pizza", "Bier", "Eiscreme");

$newphrase = str_replace($gesund, $lecker, $phrase);

Danke schön. Ginge es denn mit reg_ex besser/kürzer?
 
Zumal Regex nur unnötig langsam sind.
str_replace sollte in deinem Fall deutlich schneller laufen.
 
Eben... Die Länge des Codes ist irrelevant, es kommt nur auf die Ausführungsgeschwindigkeit an... und da sind RegEx das letzte Mittel, zu dem man greift, nicht die Standardlösung.
 
Zurück
Oben