Witam

Jak w temacie utworzyłem sobie własny filtr App_Filter_Protocol, który ma za zadanie sprawdzać czy string zawiera w sobie jakiś protokół sieciowy i jeśli nie to dodawać go na początku. Niestety nie udaje mi się jakoś wywołać konstruktora, przez co nie mogę w prosty sposob przekazać parametrów do obiektu i muszę wywoływać w tym celu dodatkowe metody.
Kod klasy wygląda tak:

<!--Geshi:236760:php--><pre class="php-brief" style="font-family:monospace;"><div class="head">
  1. [topic=0]ext<span class="br0">(</span><span class="st0">'company_page'</span><span class="br0">)</span><span class="sy0">;</span></div><li class="li1"><div class="de1"> <span class="re0">$element</span><span class="sy0">-></span><span class="me1">setLabel</span><span class="br0">(</span><span class="st0">'Strona internetowa'</span><span class="br0">)</span></div><li class="li2"><div class="de2"> <span class="sy0">-></span><span class="
  2. me1">addFilter</span><span class="br0">(</span><span class="kw2">new</span> Zend_Filter_StringToLower<span class="br0">(</span><span class="br0">)</span><span class="br0">)</span></div><li class="li1"><div class="de1"> <span class="sy0">-></span><span class="me1">addFilter</span><span class="br0">(</span><span class="kw2">new</span> App_Filter_Protocol<span class="br0">(</span>[url="http://www.php.net/array"]<span class="kw3">array</span>[/url]<span class="br0">(</span><span class="st0">'protocol'</span><span class="sy0">=></span><span class="st0">'http://'</span><span class="br0">)</span><span class="br0">)</span><span class="br0">)</span></div><li class="li2"><div class="de2"> <span class="sy0">-></span><span class="me1">addValidator</span><span class="br0">(</span><span class="kw2">new</span> App_Validate_Url<span class="br0">(</span><span class="br0">)</span><span class="sy0">,</span> <span class="kw2">true</span><span class="br0">)</span><span class="sy0">;</span></div><li class="li1"><div class="de1"> <span class="re0">$this</span><span class="sy0">-></span><span class="me1">addElement</span><span class="br0">(</span><span class="re0">$element</span><span class="br0">)</span><span class="sy0">;</span></div><li class="li2"><div class="de2"><span class="br0">}</span></div>
  3. [/list]<div class="foot">[PHP] [url="./Pobierz-Plik-236761.html"]plaintext[/url] </div></pre><!--/Geshi:236761:php-->
  4.  
  5. lub tak:
  6.  
  7. [php]
  8. $filter = new App_Filter_Protocol(array('protocol'=>'http://'));
  9. echo $filter->filter("www.google.pl");

W obydwu przypadkach nie zostaje niestety dodany protokol. W wyniku testów doszedłem do tego że nie odpala się w ogole kontruktor ale nie mam pojecia dlaczego. Ma ktoś jakąś odpowiedz co może być przyczyną? Co zle robie?


Edit:
Eeee ale wstyd tongue.gif Dopiero na tym listingu dojrzałem się że w nazwie kontruktora zjadłem literke tongue.gif. Temat do zamknięcia a klase zawsze ktoś możę sobie wykorzystać smile.gif

Edit2:
Podczas edycji posta chyba coś się zepsuło bo listing się nie sprasował i po zapisaniu wygląda tak jak wygląda sad.gif