![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 100 Pomógł: 3 Dołączył: 25.06.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
mam problem z zastosowaniem funkcji preg_match(, mianowicie w kodzie napisanym proceduralnie działa prawidłowo. Lecz zastosowanie tego samego wyrażenia już obiektowo powoduje brak danych w zwracanej tablicy. Proc: Obiek:
echo i print_r byly dodane do weryfikacji. Zmienna: $this -> _mail przyjmuje dane prawidlowo Jakis pomysl?? Ten post edytował linx 5.09.2012, 10:36:04 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 223 Pomógł: 27 Dołączył: 16.04.2008 Skąd: Bakutilu Ostrzeżenie: (0%) ![]() ![]() |
A tak:
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 915 Pomógł: 210 Dołączył: 8.09.2009 Skąd: Tomaszów Lubelski/Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Nie ma różnicy między
a Błąd masz gdzieś indziej. Ten post edytował redeemer 5.09.2012, 13:02:22 -------------------- |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 100 Pomógł: 3 Dołączył: 25.06.2007 Ostrzeżenie: (0%) ![]() ![]() |
Wiem że niema znaczenia czy zmienna jest przekazywana przez $wynik czy bezpośrednio do $this->maches
Ale dlaczego prawie że identyczny kod proceduralnie działa a obiektowo nie? Nawet jak pokombinuje z wyrażeniem na różne sposoby to udaje mi się przekazać jakieś dane do tablicy. Lecz jest to nie więcej niż 2 elementy w tablicy a powinna być przynajmniej 4 elementowa. Jakiś jeszcze pomysł, bo ja już ich nie mam. |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 915 Pomógł: 210 Dołączył: 8.09.2009 Skąd: Tomaszów Lubelski/Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Zrób w metodzie sobie:
Porównaj dumpy - powinny być takie same. Wniosek: złe wyrażenie regularne, lub $this->_mail zawiera nie dokładnie to co myślisz, że zawiera. -------------------- |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 100 Pomógł: 3 Dołączył: 25.06.2007 Ostrzeżenie: (0%) ![]() ![]() |
Chyba się nie zrozumieliśmy.
Kiedy do czystego pliku wklejam
to wszystko działa ok. Kiedy zaczynam to wklejać do jednej z funkcji w obiekcie to już nie działa (tablica zero elementowa)
Na pewno problemem nie jest nazwa 3 elementu funkcji preg_match ( $wynik czy $this->matches nie mają tu wpływu). Bardziej mnie zastanawia czy może trzeba zastosować jakąś pętle albo inne wyrażenie. |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 1 748 Pomógł: 388 Dołączył: 21.08.2009 Skąd: Gdynia Ostrzeżenie: (0%) ![]() ![]() |
Słuchaj @redemmer już Ci napisał, że błąd masz gdzie indziej, więc nie rozumiem, czemu nie możesz się z tym pogodzić.
Możesz sobie wrzucić to: do metody klasy i zobaczysz, że działa tak samo jak poza klasą i błąd jest gdzie indziej. Najprawdopodobniej błąd masz w wyrażeniu regularnym bo zakładasz, że jak działa na banalnym przykładzie to na bardziej skomplikowanej strukturze też zadziała. Nic dokładniej nie da się powiedzieć, ponieważ nie napisałeś co zawiera zmienna $this->_mail; |
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 387 Pomógł: 66 Dołączył: 31.03.2005 Skąd: Kielce Ostrzeżenie: (0%) ![]() ![]() |
twoje wyrażenie jest zachlanne, musisz dac znak zapytania. pisze z komórki, gotowca nie wstawie bo jestem leniwy tak jak poprawne wyrażenie którego powinieneś użyć
![]() poczytaj o wyr. reg. zachlannych i leniwych na Google -------------------- ..::: Jak pomogłem to kliknij pomógł. Tak rzadko używacie tej opcji :( :::..
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 19.08.2025 - 14:31 |