![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 2 291 Pomógł: 156 Dołączył: 23.09.2007 Skąd: ITALY-MILAN Ostrzeżenie: (10%) ![]() ![]() |
Elo pisze system assets-ow i mam problem, gdy szukam kod css/js ktory jest wieloliniowy to moj regexp nie wyszukuje kodu:
To dziala np dla tego: Kod {@ css @} dsfdsffdsf {@ end css @} Ale gdy dam juz kod css: Kod {@ css @} #login{ width: 100px; } {@ end css @} To nie dziala poniewaz jest tam \r\n, jak zrobic tak zeby je tez bralo pod uwage?Probowalem za pomoca \w+, grup itp...itd...ale nic z wyrazen regularnych jestem cienki bolek. Czy ktos wie jak to zrobic? -------------------- Zainteresowania: XML | PHP | MY(SQL)| C# for .NET | PYTHON
http://code.google.com/p/form-builider/ Moj blog |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 728 Pomógł: 76 Dołączył: 12.06.2009 Ostrzeżenie: (0%) ![]() ![]() |
Globalny modyfikator s
http://www.php.net/manual/en/reference.pcr...n.modifiers.php -------------------- gry flash online
Dobry hosting i tanie odnowienia domen firma: masternet. Zarabianie bez wysiłku na domenach bez ruchu: prolink. |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 2 291 Pomógł: 156 Dołączył: 23.09.2007 Skąd: ITALY-MILAN Ostrzeżenie: (10%) ![]() ![]() |
Jesli zrobie tak jak mowisz nie znajduje mi nic, a dwa rozwala mi strone nie wiem dlaczego ;p
Jakies inne rozwiazanie? Nie mozna dodac do (.*) jakies wyrazenia zeby akceptowalo x nowych lini? Ten post edytował marcio 12.11.2012, 16:53:06 -------------------- Zainteresowania: XML | PHP | MY(SQL)| C# for .NET | PYTHON
http://code.google.com/p/form-builider/ Moj blog |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 590 Pomógł: 107 Dołączył: 25.10.2011 Ostrzeżenie: (0%) ![]() ![]() |
Po pierwsze, to nie dodawaj \r\n. Konstrukcja "\r\n(.*)\r\n" użyta przez Ciebie powinna być równoznaczna z "(.*)". Jak zapewne wiesz, "." w tym miejscu oznacza "dowolny znak". W tym także znak nowej linii (niezależnie czy \r, \n czy \r\n). Opcjonalnie możesz popróbować z modyfikatorem "m".
|
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 2 291 Pomógł: 156 Dołączył: 23.09.2007 Skąd: ITALY-MILAN Ostrzeżenie: (10%) ![]() ![]() |
Kropka z tego co sie orientuje wlasnie nie bierze pod uwage znaku przelamania linii.
Zobacze z modyfikatorem /m ale watpie. -------------------- Zainteresowania: XML | PHP | MY(SQL)| C# for .NET | PYTHON
http://code.google.com/p/form-builider/ Moj blog |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 590 Pomógł: 107 Dołączył: 25.10.2011 Ostrzeżenie: (0%) ![]() ![]() |
No jednak okazało się, że "m" nie jest konieczny:
No chyba że źle zrozumiałem problem. BTW, to samo możesz uzyskać ze zwykłego preg_replace: |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 2 291 Pomógł: 156 Dołączył: 23.09.2007 Skąd: ITALY-MILAN Ostrzeżenie: (10%) ![]() ![]() |
Nie nie nie dziala to moze wytlumacze lepiej.
Posiadam kod html strony, jednak potrzebuje miec mozliwosc dodawania z osobna do kazdego komponentu/plugin-u/widget-u kod js/css. W widoku komponentu robie np cos takiego: Kod {@ assets type="css" path="sss/ddds/kod.css" @} {@ assets type="js" path="sss/ddds/kod.js" @} {@ javascripts @} $(document).ready(function() { // put all your jQuery goodness in here. }); {@ end @} {@ css @} #login{ width: 100px; } {@ end @} I chce zeby ta czesc kodu byla wrzucana do HEAD strony...o ile assets mi wyszukuje i podmienia prawidlowo to jesli chodzi o kod css/js w zrodle juz nie dziala. Poki co kombinuje tak:
Ale co mi to nie dziala. Kombinowalem tez z htmlspecilchars/html_entity_decode ale nic bo czasami rozwala strone. Ten post edytował marcio 13.11.2012, 11:42:55 -------------------- Zainteresowania: XML | PHP | MY(SQL)| C# for .NET | PYTHON
http://code.google.com/p/form-builider/ Moj blog |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 590 Pomógł: 107 Dołączył: 25.10.2011 Ostrzeżenie: (0%) ![]() ![]() |
Masz kod
w $assest_inline[0] będziesz miał cały dopasowany ciąg, od "{@ css @}" do "{@ end css @}" (z tymi znacznikami włącznie) w $assets_inline[1] będziesz miał albo "javascript", albo "css" - w zależności od tego, jaki tekst dopasuje w $assets_inline[2] będziesz miał zawartość tego, co masz między swoimi znacznikami Musisz użyć $assets_inline[2], tymczasem ja widzę w zaprezentowanym listingu w linii 24 nadal $assets_inline[1]. To świadomie czy przeoczenie? Ten post edytował abort 13.11.2012, 14:16:14 |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 2 291 Pomógł: 156 Dołączył: 23.09.2007 Skąd: ITALY-MILAN Ostrzeżenie: (10%) ![]() ![]() |
No no uzywam $assets_inline[2], za pomoca $assets_inline[1] sprawdzam tylko czy w ogole cos znalazlo, sprawdz dobrze kod, za pomoca $assets_inline[1] sprawdzam jakiego typu jest kod css/javascripts potem wsadzam go w odpowiednie znaczniki.
Problem jest tez taki ze ucina mi np {@ javascripts @} Czy ktos moglby sprawdzic na swoim serwerze jak to dziala i jaki daje rezultat? -------------------- Zainteresowania: XML | PHP | MY(SQL)| C# for .NET | PYTHON
http://code.google.com/p/form-builider/ Moj blog |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 590 Pomógł: 107 Dołączył: 25.10.2011 Ostrzeżenie: (0%) ![]() ![]() |
Fakt, zbyt pobieżnie przejrzałem kod. W tej chwili jestem po krótkich testach - i wygląda mi na to, że po zmianie w szóstej linii "(.*)" na "(.*?)" działa lepiej...
|
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 2 291 Pomógł: 156 Dołączył: 23.09.2007 Skąd: ITALY-MILAN Ostrzeżenie: (10%) ![]() ![]() |
Nie nie dziala to zbytnio, chodzi tu bardziej o to ze tak jakby mu nie pasowal kod html i ucina mi poczatkowe tagi {@ css @}/{@ javascripts @} przez co chyba nie dziala.
-------------------- Zainteresowania: XML | PHP | MY(SQL)| C# for .NET | PYTHON
http://code.google.com/p/form-builider/ Moj blog |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 590 Pomógł: 107 Dołączył: 25.10.2011 Ostrzeżenie: (0%) ![]() ![]() |
Zauważ, że wewnątrz metody wszystko masz teoretycznie OK. Ale coś jest nie tak na końcu, w ostatnich linijkach. Krótkie moje testy pokazały, że coś szwankuje na końcu metody. Pliki z rozszerzeniami php i phps to ten sam plik (hardlink na linuksie).
|
|
|
![]()
Post
#13
|
|
![]() Grupa: Zarejestrowani Postów: 2 291 Pomógł: 156 Dołączył: 23.09.2007 Skąd: ITALY-MILAN Ostrzeżenie: (10%) ![]() ![]() |
Cytat Ale coś jest nie tak na końcu, w ostatnich linijkach Dokladnie. Nie wiem czy problem nie lezy po stronie html choc w to watpie probowalem tez tresc puszczac przez htmlspecialchars i potem na samym koncu robic html_entity_decode czy jakos tak ale w sumie tez nie dzialalo. EDIT:
Taki kod zalatwia sprawe, preg_match_all ma chyba jakis bug...ogolnie rzecz biorac bede musial sie pobawic z preg_replace_callback zeby wsadzilo mi podmieniony kod w znaczniki <head></head> Tylko jak? Nie wazne problem rozwiazany chyba preg_match_all ma jakis bug albo ja cos robilem zle, troche na okolo ale dziala:
Ten post edytował marcio 14.11.2012, 14:55:52 -------------------- Zainteresowania: XML | PHP | MY(SQL)| C# for .NET | PYTHON
http://code.google.com/p/form-builider/ Moj blog |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 19.07.2025 - 17:10 |