include in object

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Mark L

Mark L

18/03/2011 10:27:18
Quote Anchor link
Stel ik heb een class die een include-statement gebruikt, dan kan de hele pagina in de include-statement de $this-variabele gebruiken.
Ik vroeg me af of dit kwaad kan.

vb.:

-- home.php --
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php
   class home
   {
      public $var1, $var2, $var3, //...
      public function __construct ($v)
      {

         $this->var1 = $var;
         include "includeFile.php";
      }
   }
   new
home ('test');
?>


-- includeFile.php --
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
   echo $this->var1; // outputs 'test', mits geïnclude...
?>


Ik vroeg me af of dit kwaad kon of niet. Kan ik deze functionaliteit gewoon gebruiken, of is dat af te raden?

Gr,
Mark L.
 
PHP hulp

PHP hulp

19/04/2024 12:42:49
 
Robert  dat ben ik

Robert dat ben ik

18/03/2011 12:01:31
Quote Anchor link
is het niet handiger om je include boven aan te zetten?
aangezien je hem altijd wil loaden
load de include boven aan je script ook

en het lijkt mijn beter om geen file te include maar die code te verwerken in je class

of is dit geen optie?
Gewijzigd op 18/03/2011 12:03:12 door Robert dat ben ik
 
TJVB tvb

TJVB tvb

18/03/2011 12:13:59
Quote Anchor link
Het op deze manier includen sloopt eigenlijk je oo functionaliteit doordat niet meer duidelijk is waar iets gebeurt. Als je iets aan wilt passen kun je een class extenden.
 
Mark L

Mark L

18/03/2011 12:17:16
Quote Anchor link
Eehm, dit is enkel en alleen een voorbeeld. Dit is niet de reden waarom ik 't ga gebruiken.
Ik wil dit gaan gebruiken door waarden uit een 'nette URL' te halen:

url: mijnwebsite.nl/forum/dit-is-een-leuk-topic/pagina-3/

dan kom je standaard op een pagina waar een class staat die deze waarden uitleest.
Die zet 'dit-is-een-leuk-topic' in een variabele en 'pagina-3', en zal dan forum.php includen (wat uiteraard wel beveiligd is, zodat je niet elke pagina kan openen...)

Dan kun je d.m.v. $this->GET[0] de waarde 'dit-is-een-leuk-topic' krijgen enz.

In die eerstgeladen class maak ik dan ook de functie tot het outputten van de layout etc., dus word het eigenlijk een class die alles om de site heen regelt...

Dit kan ook anders, daarom vraag ik of het verstandig is...

Edit:
en alle belangrijke variabelen zet ik dan ook in de class zelf...
Gewijzigd op 18/03/2011 12:20:01 door Mark L
 
Robert  dat ben ik

Robert dat ben ik

18/03/2011 12:37:26
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
   public function __construct( $teken = "-" )
    {

        $this->GetObject = trim( $this->GET[0] );
        $this->URLItems = explode( $teken , $this->GetObject );
        $this->URLSplit = $teken;
    }

?>


werkt zo iets als dit niet?

afkomstig van: http://www.phphulp.nl/php/script/overig/url-rewriting-class/1416/urlrewritingclass/1029/
 
Kris Peeters

Kris Peeters

18/03/2011 12:53:45
Quote Anchor link
Mark L op 18/03/2011 12:17:16:
... daarom vraag ik of het verstandig is...


Ik denk het niet, nee.

Geef eens een aantal (specifieke) voorbeelden van dingen die je gemakkelijker met een include denkt te regelen?
 
Pim -

Pim -

18/03/2011 16:37:07
Quote Anchor link
In (goed) OOP is includen in methoden de enige manier om dynamisch bestanden te laden. Ja, het kan dus prima en werkelijk elk OOP framework doet het zo. Vooral bij autoloading en ook bij views is het de enige mogelijkheid.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.