Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Kompresja HTML-u
Forum PHP.pl > Forum > PHP
cv65
Witojcie tongue.gif

Mam malutki problem napisałem funkcje kompresującą html ale mam problem gdyż moja funkcja działa na kod JS a mianowicie nie działa żaden skrypt JS

Oto funkcja:

  1. function kompresja_html($html)
  2. {
  3. preg_match_all("!(<(?:code|pre|textarea).*>[^<]+</(?:code|pre|textarea)>)!", $html, $pre);
  4. $p = array(
  5. "!<(?:code|pre|textarea).*>[^<]+</(?:code|pre|textarea)>!",
  6. "/\r\n/",
  7. "/[\t\n]+/",
  8. "/[\s]+/",
  9. "/\<\!\-\- .* \-\-\>/",
  10. );
  11. $r = array(
  12. "#pre#",
  13. "\n",
  14. " ",
  15. " ",
  16. "",
  17. );
  18. $html = preg_replace($p, $r, $html);
  19. if(!empty($pre[0])) foreach($pre[0] as $tag) $html = preg_replace("!#pre#!", $tag, $html, 1);
  20. return $html;
  21. }


Mam do was taką prośbę żeby ktoś dopisał kod tak aby JS był pomijany i został w całości i nie podlegał kompresji.

Pozdrawiam smile.gif
Wave
może używaj średników w kodzie JS na końcu polecenia to będzie działać.
cv65
tzn jak. smile.gif możesz to rozwinąć i podać jakieś przykłady
croc
A co jest nie tak z istniejącymi aplikacjami kompresującymi kod HTML? smile.gif Na pewno opłaca się odkrywać Amerykę po raz drugi?
cv65
niestety nie działa bo kod js układa się dalej w jednej lini a wiec kod nie działa


a aplikacje nie pomogą bo mam klasę templatek i przez nią przepuszczam kod więc muszę stworzyć funkcję ;//
croc
Kolega mówił, żebyś w kodzie JS używał przecinków, to wtedy nie musisz mieć poszczególnych instrukcji w oddzielnych liniach. Kod JS też warto kompresować, w końcu tabulatory trochę bajtów zabierają smile.gif
erix
Dam bez bbCode, abyś zrozumiał, do czego piję:
Cytat
preg_match_all("!(<(?:code|pre|textarea).*>[^<]+</(?:code|pre|textarea)>)!", $html, $pre);

$p = array( "!<(?:code|pre|textarea).*>[^<]+</(?:code|pre|textarea)>!",

$r = array( "#pre#", "\n", " ", " ", "", );

Obecnie, w znacznikach code,pre,textarea "kompresja" nie jest stosowana; podałem Ci, który fragment należy podrasować, dalej powinieneś już sam się domyśleć, co trzeba dopisać. winksmiley.jpg
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.