Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]eregi - kto mi to wytłumaczy?
Forum PHP.pl > Forum > Przedszkole
f1xer
Otóż mam taki kod
  1. <?php
  2. $nazwa="cos(+5.00z), cos2(+10.00z)";
  3. if (eregi("(+[0-9]+.[0-9]+z)",$nazwa, $wynik))
  4. {
  5. print_r($wynik);
  6. }
  7. ?>

dlaczego tablica wynik ma tylko element o indeksie 0 ? jak zrobić żeby znalazły się tam 2 wartości [0]=>(+5.00z)
[1]=>(+10.00z)
kipero
Może użyj funkcji preg_match_all" title="Zobacz w manualu PHP" target="_manual?
f1xer
Ale mi chodziło o eregi, nie chodzi mi o rozwiązanie problemu tylko o odpowiedź dlaczego to nie działa? wydaje mi się że powinno zwracać dwuelementową tablicę
golaod
Odpowiedź znajduje się w manulu na php.net
Cytat
Zwracane wartości

Returns the length of the matched string if a match for pattern was found in string , or FALSE if no matches were found or an error occurred.

If the optional parameter regs was not passed or the length of the matched string is 0, this function returns 1.
f1xer
Cytat
Returns the length of the matched string if a match for pattern was found in string , or FALSE if no matches were found or an error occurred.
If the optional parameter regs was not passed or the length of the matched string is 0, this function returns 1


Ale co to ma do rzeczy? ja nie pytam się jakie funkcja zwraca wartości tylko dlaczego zapisuje TYLKO jeden element do tablicy
wyczytałem w manualu:

Cytat
If matches are found for parenthesized substrings of pattern and the function is called with the third argument regs , the matches will be stored in the elements of the array regs .
$regs[1] will contain the substring which starts at the first left parenthesis; $regs[2] will contain the substring starting at the second, and so on. $regs[0] will contain a copy of the complete string matched.


czyli tablica $wynik powinna zawierać wszystkie pasujące do wzorca elementy tak?

Znów powracam do pytania ponieważ to co przed chwilą wymyśliłem dawało złe wyniki
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.