object als parameter afdwingen?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Ozzie PHP

Ozzie PHP

22/02/2012 12:53:49
Quote Anchor link
Hallo,

Kun je een object als parameter afdwingen (net als een array)?

Bedoeling is dat $object een object moet zijn.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
public function test($object) {

}

?>
 
PHP hulp

PHP hulp

29/12/2024 04:06:58
 
Chris -

Chris -

22/02/2012 12:58:51
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
public function test(object $object) {

}

?>
 
Ozzie PHP

Ozzie PHP

22/02/2012 13:03:38
Quote Anchor link
Chris, dat werkt niet omdat hij nu een instance van de class Object verwacht.

Ik wil alleen afdwingen dat het een object is, maakt niet uit welke class.
 
Erik Rijk

Erik Rijk

22/02/2012 13:12:56
Quote Anchor link
is_object ?

Op de eerste regel binnen de functie?
Ik weet niet of je het kan afdwingen als parameter..
 
Ozzie PHP

Ozzie PHP

22/02/2012 13:14:23
Quote Anchor link
@Erik: ja, dat kan idd, maar ik vroeg me af of je het kan afdwingen, maar dat gaat dus niet :(
 
Kris Peeters

Kris Peeters

22/02/2012 13:17:18
Quote Anchor link
Op zich ben je er ook niet zoveel mee (tenzij je het gewoon bent om met try/catch alles op te vangen).

Je krijgt een runtime error opgeworpen.
En dan?

Tja, dan moet je toch controleren / error opvangen. Kan even goed met iets als is_object; zonder error.

En meestal zal je wel weten welke class van object je nodig hebt in die functie, lijkt me.
Gewijzigd op 22/02/2012 13:19:28 door Kris Peeters
 
Ozzie PHP

Ozzie PHP

22/02/2012 13:21:55
Quote Anchor link
Leek me gewoon handig. Je kan ook afdwingen dat een parameter een array moet zijn, dus waarom niet een object. Lang leve PHP :-/
 



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.