Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Początki z OOP :F
margyw
post
Post #1





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 26.02.2009

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


Witam,

miałem kilku letnią przerwę w php i teraz, kiedy znowu mnie wciągnęło, za żadne skarby nie potrafię ogarnąć obiektówki (IMG:http://forum.php.pl/style_emoticons/default/worriedsmiley.gif) .

Chciałbym, żebyście sprawdzili tą klasę i w ogóle naprowadzili mnie na dobrą drogę, czy tak powinno się używać OOP. Jako że uczyłem się strukturalnie to teraz trudno mi się odzwyczaić (IMG:http://forum.php.pl/style_emoticons/default/sciana.gif) . Jest to prosty kodzik, który ma wyświetlać plik, który mu zapodam. Pisałem to pod malutki homepage, więc użyłem go do wyświetlania podstron. A więc:

  1. <?php
  2. class Page
  3. {
  4.    private $file;
  5.    
  6.    
  7.    public function __construct($file)
  8.    {
  9.        $this->file = 'content/'.$file.'.txt';
  10.    }
  11.    
  12.  
  13.    private function loadPage()
  14.    {    
  15.        $content = file($this->file);
  16.        $content = join('', $content);
  17.        
  18.        return $content;        
  19.    }
  20.    
  21.    
  22.    private function checkPage()
  23.    {
  24.        if(file_exists($this->file)) { return TRUE; } else { return FALSE; }    
  25.    }
  26.    
  27.    
  28.    public function viewPage()
  29.    {    
  30.        if($this->checkPage()==TRUE)
  31.        {
  32.            echo $this->loadPage();            
  33.        }else{    
  34.            echo '<h2>The page you have entered is incorrect!</h2>';    
  35.        }    
  36.    }
  37.    
  38. }
  39. ?>


  1. <?php
  2. if(isset($_GET['go']))
  3.    {                        
  4.        $page = new Page($_GET['go']);
  5.        $page->viewPage();                            
  6.    }else{                        
  7.        $page = new Page('main');
  8.        $page->viewPage();                        
  9.    }
  10. ?>


Tak więc, jest to poprawne użycie obiektówki, czy taki kod mija się z celem? Bo ja już sam nie wiem, może kiedyś to pojmę (IMG:http://forum.php.pl/style_emoticons/default/dry.gif)

Z góry dzięki, pozdrawiam.

Ten post edytował margyw 28.06.2009, 23:56:46
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
alegorn
post
Post #2





Grupa: Zarejestrowani
Postów: 341
Pomógł: 40
Dołączył: 23.06.2009

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


Cytat(erix @ 29.06.2009, 11:48:14 ) *
A no tak, że nie czytałeś dokumentacji
  1. <?php
  2. (bool)'Twoja stara';
  3. ?>

i odrób pracę domową. (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)


praca domowa odrobiona... bardziej chodzi o zle doswiadczenia z takim slabym porownaniem...

po pierwsze nie kontrolujesz gdzie wystepuje blad. a i o takiej konwersji mozna by wiele gadac,
bo o ile:

var_dump((bool) "false"); // bool(true)
tak już:
var_dump((bool) "0"); // bool(false)


o ile mozna by sie zastanawiac nad przydatnoscia ponizszego dla tej klasy::
var_dump((bool) ""); // bool(false)
tak var_dump((bool) "0"); // bool(false) moze wygenerowac blizej nie zidentyfikowany blad..

przy wczesniejszych zalozeniach kazde prawidlowe zrodlo tresci, (w tym przypadku plik, ale to nie istotne) nie moze byc pusty lub... nie moze zawierac tylko '0', kiepskie, jak dla mnie przynajmniej..
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 14.10.2025 - 08:42