Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: preg_replace_callback + odwolanie sie do funkcji wewnatrz klasy
Forum PHP.pl > Forum > PHP > Object-oriented programming
CapaciousCore
Krotko i na temat. Jak dac "callbacka" do metody w obiekcie? Nie chce odwolania do zwyklej funkcji lecz do metody w obiekcie. Jak do licha to zrobic? Probowalem roznie classy_nazwa::funkcja, classy_nazwa::funkcja(), this -> funkcja(), $this ->funkcja(), \$this -> funkcja(), ...

  1. $str = preg_replace_callback($preg_callback_patterns, 'xxx', $str);





Ma ktos blade pojecie jak to zrobic?

darko
Pokaż metodę i niedziałające wywołanie. W manualu nawet jest przykład, tyle że z wnętrza klasy:

  1. class myClass{
  2. public function parsetext($text){
  3. // parses text and sets literals A - C to lower case
  4. // this works
  5. return preg_replace_callback('|([a-c])|i', 'myClass::preg_tolower', $text);
  6. }
  7. public function parsefail($text){
  8. // parses text and sets literals A - C to lower case
  9. // this fails
  10. return preg_replace_callback('|([a-c])|i', 'self::preg_tolower', $text);
  11. }
  12.  
  13. private static function preg_tolower($matches){
  14. return strtolower($matches[1]);
  15. }
  16. }

[za:]http://php.net/manual/en/function.preg-replace-callback.php
CapaciousCore
  1. $str = preg_replace_callback($preg_callback_patterns, array($this, 'test'), $str);

Dla potomnych rozwiazanie problemu :] Trzeba w array() stuknac.

Moim skromnym zdaniem troszke zle manual opisuje tongue.gif ale lajt. Grunt, ze jest.

Cos Wam bbcode sie posypal chyba :] w sensie zle dodaje tresc przy pelnej edycji buehehe.
e1n
Cytat(CapaciousCore @ 11.01.2010, 23:39:10 ) *
Krotko i na temat. Jak dac "callbacka" do metody w obiekcie? Nie chce odwolania do zwyklej funkcji lecz do metody w obiekcie. Jak do licha to zrobic? Probowalem roznie classy_nazwa::funkcja, classy_nazwa::funkcja(), this -> funkcja(), $this ->funkcja(), \$this -> funkcja(), ...

  1. $str = preg_replace_callback($preg_callback_patterns, 'xxx', $str);





Ma ktos blade pojecie jak to zrobic?


Czytanie nie boli ;-)

http://pl.php.net/manual/en/language.pseud....types.callback
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.