Vraag over -> in PHP

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Mathijs Adriaansen

Mathijs Adriaansen

17/10/2013 11:05:01
Quote Anchor link
hallo
ik kom best vaak dit teken tegen -> ,
weet iemand wat dit teken doet in php:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
->


Edit:
Een iets logische titel gebruikt
Gewijzigd op 17/10/2013 11:41:29 door - Ariën -
 
PHP hulp

PHP hulp

20/12/2024 06:28:24
 
Kris Peeters

Kris Peeters

17/10/2013 11:38:04
Quote Anchor link
Dat wordt gebruikt bij object notatie

Hier een beginners-tutorial OOP (Object geOriënteerd Programmeren)
http://phptuts.nl/view/45/

dus, je hebt bv. een object $auto.
De eigenschappen van die auto lees/schrijf je met die ->

bv.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
$mijn_auto
= new Auto();
$mijn_auto->merk = 'Ferrari';
$mijn_auto->pk = 300;
...

?>
 
- Ariën  -
Beheerder

- Ariën -

17/10/2013 11:39:34
Quote Anchor link
Dat hoort bij objecten..

Kort gezegd, je hebt array's:
$list['naam'].

Maar je hebt ook objecten om dingen in op te slaan:
$list->naam.

Het verschil is vind ik zelf lastig uit te leggen, dus daar mag iemand anders zich aan wagen. Het hoeft overigens niet alleen bij OOP-techniek te worden gebruikt, hoewel ik het verstandig vindt om dat juist wel te doen...
Gewijzigd op 17/10/2013 11:40:22 door - Ariën -
 
Mathijs Adriaansen

Mathijs Adriaansen

17/10/2013 11:42:14
Quote Anchor link
dus als ik het goed begrijp wordt dit teken -> aangeduid om eigenschappen in op te slaan.

weet iemand toevallig ook het verschil tussen een # en een / in een preg_match?
Gewijzigd op 17/10/2013 12:28:56 door Mathijs Adriaansen
 
Kris Peeters

Kris Peeters

17/10/2013 11:59:59
Quote Anchor link
Zowel opslaan als lezen.

En ook om de methodes (dat zijn functies) aan te spreken.

bv.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
$mijn_auto
= new Auto();
// methode triggeren
$mijn_auto->geef_gas();
// eigenschap lezen
echo $mijn_auto->snelheid
?>
 
Frank Nietbelangrijk

Frank Nietbelangrijk

17/10/2013 18:14:27
Quote Anchor link
Hmm ik zal ook een poging wagen.

Eerst maken we een class aan. deze omschrijft hoe een object er straks uit komt te zien. Het is een prototype, zeg maar de blauwdruk of het ontwerp van de objecten die we gaan maken.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php

class User
{
    // inhoud van de class
}

?>


dan maken we van dit ontwerp daadwerkelijke objecten aan in het geheugen van de computer:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php

$user1
= new User();
$user2 = new User();
$user3 = new User();

?>


nu bestaan er drie objecten ergens in het geheugen van de computer. Deze objecten kunnen bestaan uit meerdere variabelen (die noemen we dan properties) maar ook uit meerdere functies (en die noemen we dan methods).

stel nu dat de objecten een (public) variabele $name hebben dan zouden we dit kunnen doen:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php

$user1
->name = 'Tom';
$user2->name = 'Sandra';
$user3->name = 'Henk';

?>


in $user1 t/m $user3 zit eigenlijk alleen het geheugenadres opgeslagen van het object dat bij die variabele hoort. Dus eigenlijk zeg je:

sla de waarde 'Tom' op in de variabele $name van het object waar $user1 naar toe wijst.
sla de waarde 'Sandra' op in de variabele $name van het object waar $user2 naar toe wijst.
sla de waarde 'Henk' op in de variabele $name van het object waar $user3 naar toe wijst.

vandaar het pijltje (pointer) '->'
Gewijzigd op 17/10/2013 18:17:12 door Frank Nietbelangrijk
 



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.