Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Kilka pytań odnośnie OOP w PHP
uki8877
post
Post #1





Grupa: Zarejestrowani
Postów: 55
Pomógł: 0
Dołączył: 27.03.2016

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


Witam

Chciałbym się dowiedzieć kilku rzeczy nt programowanie obiektowego w PHP

Mianowicie ,załóżmy iż mamy jakąś stronę www z np 5 podstronami.

Nie będziemy na każdej od podstaw pisać nagłówka, stopki itd.

W przypadku strukturalnego programowania można by stworzyć sobie plik functions.php i w nim przechowywać np stopke, a potem na kazdej z tych stron użyć require() i wywołać funkcję ,która ta stopke przechowuje .

A jak sprawa się ma w przypadku programowania obiektowego ?

Dobrym rozwiązaniem jest stworzenie klasy, która bedzie przechowywała ta stopke i nagłówek oraz inne elementy html które będziemy często wywowywać i potem po prostu odwoływać się do tych elementów ?

czyli cos w stylu :

  1. public functions stopka() {
  2. $this->stopka = '
  3. <p>To jest stopka</p>
  4. </body>
  5. </html>';
  6.  
  7. return $this->stopka;
  8. }


cos takiego jest ok ? czy może lepiej ustawić aby stopka była statyczna i odwoywac sie " NazwaKlasy::stopka() " ? To chyba tez dobre rozwiazanie ?

No a moze wy znacie lepsze metody ,jesli tak to proszę o wytłumaczenie :-)

Pozdrawiam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
viking
post
Post #2





Grupa: Zarejestrowani
Postów: 6 380
Pomógł: 1116
Dołączył: 30.08.2006

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


Nie ma najmniejszego sensu tworzyć metody która zawiera tylko HTML. Od tego wystarczy zwykłe include. Zastosuj jakiś system szablonów - a wszystkie mają osadzanie bloków kodu.
Go to the top of the page
+Quote Post
Spawnm
post
Post #3





Grupa: Moderatorzy
Postów: 4 069
Pomógł: 497
Dołączył: 11.05.2007
Skąd: Warszawa




Najczęściej rozwiązuje się to tworząc osobny plik layout.phtml zawierający kod w stypu:
  1. <html><body>
  2. <h1>Moja strona</h1>
  3. <div id='foo'>
  4. <?php
  5. echo $content;
  6. ?>
  7. </div>
  8. <footer>kopyrajt (C) dfhfdh 2016</footer>


Go to the top of the page
+Quote Post
avalanche
post
Post #4





Grupa: Zarejestrowani
Postów: 7
Pomógł: 1
Dołączył: 1.05.2016

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


@up:
można i tak, ale można też dołączać ten "layout.phtml" w klasie obsługującej widok - wtedy ma się dostęp w tym miejscu do metod obiektu widoku (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
Rysh
post
Post #5





Grupa: Zarejestrowani
Postów: 821
Pomógł: 111
Dołączył: 11.09.2006
Skąd: Biała Podlaska

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


Poczytaj o MVC.
Go to the top of the page
+Quote Post
JoShiMa
post
Post #6





Grupa: Zarejestrowani
Postów: 1 374
Pomógł: 149
Dołączył: 1.03.2006

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


Proponuję wybrac jakiś prosty framework PHP, ot choćby Yii albo inny, który jest dość sztywny jeśli chodzi o strukturę i się pouczyć jak to się robi profesjonalnie. A potem zacząć pisać aplikacje w oparciu o ten framework i nie wyważać otwartych drzwi. Oczywiście można pisać aplikacje "z palca" i samemu tworzyć własne struktury, jednak ilość rzeczy o jakich trzeba pamiętać i jakie trzeba zaimplementować ręcznie (na przykład, żeby zapewnić elementarne bezpieczeństwo aplikacji) zamiast korzystać z gotowych i sprawdzonych rozwiązań jest naprawdę duża.
Go to the top of the page
+Quote Post
elmozaur
post
Post #7





Grupa: Zarejestrowani
Postów: 518
Pomógł: 18
Dołączył: 21.07.2008

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


JoShiMa:dokładnie, zwłaszcza że ilość gotowych modułów jest ogromna (jak np w Zendzie). Istnieje też druga strona medalu która pokazuje jakie cyrki dzieją się przy aktualizacji takich gotowych kombajnów ;-)
Go to the top of the page
+Quote Post

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: 22.08.2025 - 22:31