public function action_test() { if (true) { } }
Chcialbym pobrac metode wraz z jej kodem za pomoca funkcji preg_match. Robie to w nastepujacy sposob:
Niestety takie wyrazenie nie jest odporne na znaki { i } wewnatrz metody a nawet na znak konczacy metode, po prostu pobiera wszystko do konca klasy.
Chcialem napisac wyrazenie odporne na takie zachowanie w ktorym zawarlbym podwyrazenia ktore pilnuja znacznikow { i }, tzn. ich par tak, ze po znalezieniu znaku } bez { jako otwarcia wyrazenie by sie konczylo. Nie jestem dobry z wyrazen regularnych, jedyne co przyszlo mi do glowy to
jednak i to nie pomoglo. Prosze o pomoc, bede bardzo wdzieczny.
preg_match('/(public function action_test)[a-z]*\(\)\s*\{((\{(.|\n)*\})*|(.\n)*)}/', $code, $action);