Chcialbym sie dowiedziec co jest przyczyna problemu, ze wyrazenia regularne zdaja sie "nie chwytac" wyrazen
ze stringow w ktorych jest znak nowej lini. Na przyklad mamy dany ciag:
<?php $xml = "<ROOT><T1>ns</T1><T1>2</T1><AB><A>11</A><B>22</B><C>33</C></AB></ROOT>"; ?>
i wyrazenie
/<T1>.*?</T1>/x
funkcja preg_match_all zwroci mi tablice [0] = ns [1] = 2
Jesli natomiast zmodyfikuje string dodajac znak nowej lini po ns
<?php $xml = "<ROOT><T1>nsn</T1><T1>2</T1><AB><A>11</A><B>22</B><C>33</C></AB></ROOT>"; ?>
lub wpisze np.
<?php $xml = '<ROOT> <T1> ns </T1> <T1>2</T1><AB><A>11</A><B>22</B><C>33</C></AB></ROOT>'; ?>
w wyniku otrzymam tylko [0] = 2
Nie bardzo rozumiem dlaczego tak sie dzieje, myslalem ze KROPKA oznacza kazyd znak.
Pozdrawiam