Object een onderdeel van ander Object

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

UltimateWeapon

UltimateWeapon

30/09/2006 00:26:00
Quote Anchor link
Ik ben totaal nieuw in Object Oriented Programming en ik kan nergens een oplossingvinden voor het volgende:

Ik zou graag een object onderdeel laten zijn van een ander object,
bijvoorbeeld:

Het object Auto heeft een motor, en de motor op zich is ook weer een object met verschillende onderdelen.

dit is wat ik doe:

class Auto
{
Motor $motor = new Motor();
.........

de rest doet er niet toe, hier geeft hij een foutmelding:


Parse error: parse error, expecting `T_OLD_FUNCTION' or `T_FUNCTION' or `T_VAR' or `'}''

Weet er iemand hoe je dit op een juiste manier schrijft, of waar ik deze info kan vinden?

Alvast bedankt
 
PHP hulp

PHP hulp

22/12/2024 10:15:34
 
Terence Hersbach

Terence Hersbach

30/09/2006 00:32:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php
class Auto {

  function
engine($var)
  {

     $motor = new motor();
     return $motor;
  }

?>

ik denk dat het ongeveer zo is

edit: heb me bedacht :)
Gewijzigd op 01/01/1970 01:00:00 door Terence Hersbach
 
UltimateWeapon

UltimateWeapon

30/09/2006 00:56:00
Quote Anchor link
Bedank, met die info heb ik de class en constructor gemaakt als volgt:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<?php
class Auto {
    var
$deur;
    var
$motor;

     function
Auto()
     {

          $this->deur = 4;
          $this->motor = new Motor();
     }

[
/code]

hoe roep ik nu het toerental aan van de motor, via de index.php ?

daar staat
[code]
[
code]<?php
..........
$objAuto = new Auto();

echo $objAuto->deur; // print 4
echo $objAuto........ // hoe krijg ik hier
//het toerental van de motor?

..........
[
/code]

ik had al gedacht om daar een getter voor te schrijven in de class Auto maar dat vind ik nogal omslachtig om dat voor elk element van motor te moeten gaan doen
dus ik denk wel dat er kortere en betere manieren zijn?
Gewijzigd op 01/01/1970 01:00:00 door UltimateWeapon
 
UltimateWeapon

UltimateWeapon

30/09/2006 01:09:00
Quote Anchor link
EDIT:

ik heb het gevonden na wat eigen gepuzzel, dus voor diegenen die er ook van dienst zouden kunnen mee zijn:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php
..........
$objAuto = new Auto();

echo $objAuto->deur; // print 4
echo $objAuto->motor->toerental; // print
//het toerental

[/code]

Een beetje verrast dat dit werkt, wat is PHP toch mooi :-D
Gewijzigd op 01/01/1970 01:00:00 door UltimateWeapon
 
Terence Hersbach

Terence Hersbach

30/09/2006 01:11:00
Quote Anchor link
het werkt inderdaad op die manier, en niet alleen in PHP maar in vrijwel alle scripttalen ;)
 



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.