Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]str_replace(); a spowalnianie ładowania się strony
Forum PHP.pl > Forum > Przedszkole
Larges
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
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
1.) Stosuj tablice jako wejscie do str_replace - zamiast 100 komend bedziesz mial jedna smile.gif
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:
  1. <?php
  2. $phrase  = "You should eat fruits, vegetables, and fiber every day.";
  3. $healthy = array("fruits", "vegetables", "fiber");
  4. $yummy   = array("pizza", "beer", "ice cream");
  5.  
  6. $newphrase = str_replace($healthy, $yummy, $phrase);
  7. ?>
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.