Larges
10.02.2009, 22:40:35
Witam, czy zamiana dużej ilości ciągów na inne poprzez str_replace(); znacząco wpływa na ładowanie się strony?
W sumie dziwne pytanie, ale wychodzi na to że zmian muszę zrobić bardzo wiele.
Content który mam do przerobienia zazwyczaj zawiera ok 3-5 ciągów do przeróbki, ale masa contentu sprawia że muszę stworzyć znaczną listę zmian które zajdą, gdy wystąpi dany ciąg w danym contencie.
Zatem jeden content jest sprawdzany sporo razy aby wychwycić ciągi i zmienić je.
Czy przesiew contentu przez może nawet 100 str_replace(); może być przesadnym posunięciem?
Dzięki za sugestie i odpowiedź.
Pilsener
11.02.2009, 08:25:04
Do takich rzeczy stanowczo str_replace się nie nadaje, ja używam (w systemie szablonów) preg_replace.
Edit: bzdurę napisałem, nawet nie zauważyłem, że można już od ładnych paru lat do str_replace używać tablic.
Edit ponownie: u mnie i tak preg_replace jest szybsze, ale tylko dlatego, że w szablonie używam np. {title} a zmienne dodaje do klasy $dane['title'] = $title, przy użyciu str_replace muszę rozbić tablicę na dwie (oddzielnie klucze i wartości) i dodatkowo dodać klamry do każdego klucza, jednak gdy mamy do dyspozycji gotowe tablice to str_replace jest z pewnością szybsze. Pozdrawiam.
Sky_walker
11.02.2009, 09:01:28
1.) Stosuj tablice jako wejscie do str_replace - zamiast 100 komend bedziesz mial jedna

2) czytaj punkt 5 tutaj:
http://www.motov.net/php-the-ultimate-tips...-must-read.html - preg_replace jest 2 i pol raza wolniejszy od str_replace. Gdzie sie da - uzywaj str_replace.
[edit]
przyklad z tablica:
<?php
$phrase = "You should eat fruits, vegetables, and fiber every day.";
$healthy = array("fruits", "vegetables", "fiber"); $yummy = array("pizza", "beer", "ice cream");
?>