Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Wydobycie kodu PHP z tekstu, preg_match_all
barthpl
post 16.10.2011, 19:02:47
Post #1





Grupa: Zarejestrowani
Postów: 142
Pomógł: 35
Dołączył: 5.12.2006
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Czy ktoś wie w jaki sposób przy pomocy preg_mach_all z kodu na przykład takiego
  1. <?php echo 'ala ma kota' ?>
  2. </head>
  3. <body><?php
  4. $p->getValue( 'ala' );
  5. echo $t * 7;
  6. ?></body>
  7. </html>

wydobyć elemnty kodu PHP
  1. echo 'ala ma kota'

  1. $p->getValue( 'ala' );
  2. echo $t * 7;

Jak na razie udało mi się to zrobić pod warunkiem że jest w jednej lini
  1. preg_match_all( '/\<\?php (.{0,}) \?\>/i', $item, $code );

jakiś pomysł jak to poprawić questionmark.gif

Ten post edytował barthpl 16.10.2011, 19:52:55


--------------------
Jeżeli pomogłem rozwiązać Twój problem, kliknij pomógł.
Go to the top of the page
+Quote Post
wizu
post 16.10.2011, 19:21:29
Post #2





Grupa: Zarejestrowani
Postów: 127
Pomógł: 15
Dołączył: 16.02.2008
Skąd: Sanok

Ostrzeżenie: (0%)
-----


Nie wystarczy (.*?) ?

Ten post edytował wizu 16.10.2011, 19:21:49
Go to the top of the page
+Quote Post
barthpl
post 16.10.2011, 19:40:32
Post #3





Grupa: Zarejestrowani
Postów: 142
Pomógł: 35
Dołączył: 5.12.2006
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


niestety, daje to taki sam efekt jak poprzednio.


--------------------
Jeżeli pomogłem rozwiązać Twój problem, kliknij pomógł.
Go to the top of the page
+Quote Post
wizu
post 16.10.2011, 19:50:56
Post #4





Grupa: Zarejestrowani
Postów: 127
Pomógł: 15
Dołączył: 16.02.2008
Skąd: Sanok

Ostrzeżenie: (0%)
-----


Druga sprawa, nie zamknąłeś ?> w drugim przykładzie.
Usuń także spacje z wyrażenia, w końcu może tam być znak nowej linii a nie spacja <\?php(.{0,})\?\>

@edit
a i zapomniał bym. Żeby kropka łapała również znak nowej linii, musisz dodać modyfikator s:
Kod
/\<\?php(.*?)\?\>/is


Ten post edytował wizu 16.10.2011, 19:54:30
Go to the top of the page
+Quote Post
barthpl
post 16.10.2011, 19:57:59
Post #5





Grupa: Zarejestrowani
Postów: 142
Pomógł: 35
Dołączył: 5.12.2006
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


jesteś wielki, właśnie tego "s" szukałem wink.gif


--------------------
Jeżeli pomogłem rozwiązać Twój problem, kliknij pomógł.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 25.06.2025 - 07:50