Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> metody i zmienne statyczne, sposoby użycia
bliitz
post
Post #1





Grupa: Zarejestrowani
Postów: 155
Pomógł: 12
Dołączył: 5.04.2008

Ostrzeżenie: (0%)
-----


Witam

Fragment przykładowej klasy:
  1. class Parse_Data
  2. {
  3. public $data = array();
  4. /**
  5.   * Create an instance of Parse_Data
  6.   *
  7.   * @staticvar empty $instance
  8.   * @return object
  9.   */
  10. public static function instance()
  11. {
  12. static $instance;
  13. empty( $instance ) AND $instance = new Parse_Data;
  14. return $instance;
  15. }
  16. /**
  17.   *
  18.   * @param array $post
  19.   * @param array $data
  20.   * @return boolean
  21.   */
  22. public function check( $post, array $data )
  23. {
  24. $this->data = new Validation( $post );
  25. $this->data->pre_filter( 'trim' );
  26. foreach( $data as $k => $v )
  27. {
  28. $this->data->add_rules( $k, $v );
  29. }
  30. return $this->data->validate();
  31. }
  32. }


i sposób w jaki chcę jej użyć:
  1. if( Parse_Data::check( $_POST, array( 'art_title' => 'required',
  2. 'art_content' => 'required',
  3. 'art_teen' => 'numeric' ) ) )


i teraz kilka pytań:
1. Dlaczego nie zwraca to błędu mimo iż check() nie jest statyczna?
2. W jaki sposób mogę dostać się do zmiennej $data z zewnątrz czyli coś w ten deseń Parse_Data::instance()->data ? ( oczywiście to nie działa tylko dlaczego )
3. Czy jedyny sposób do utworzenie zmiennej $data jako statycznej i odwołanie się do niej w postaci Parse_Data::$data czy pozostawienie jej zwykłą ( nie statyczną ) i utworzenie metody dzięki której będzie do niej dostęp ?


--------------------
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 21:20