Kan een object zichzelf vernietigen?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: « vorige 1 2

Ozzie PHP

Ozzie PHP

19/11/2010 22:58:02
Quote Anchor link
"Nah, ik vind het min of meer raar dat je een database verbinding wilt sluiten doormiddel van het weggooien van een object."

Ik wil de verbinding sluiten en daarna onmogelijk maken om het object nog te benaderen. Maar laat maar zitten, te lastig om uit te leggen. Unsetten is inderdaad een optie of eventueel een error throwen als een reeds gesloten verbinding wordt gebruikt. Moet ik nog even over nadenken. In ieder geval bedankt voor het meedenken. Heb er in ieder geval weer wat ideetjes bij gekregen :)
 
PHP hulp

PHP hulp

29/03/2024 09:51:30
 
Niels K

Niels K

20/11/2010 11:27:55
Quote Anchor link
Geen probleem, succes verder
 
Ozzie PHP

Ozzie PHP

22/11/2010 09:20:42
Quote Anchor link
Toch nog een vraagje...
Ik heb een set functie die een database set in een statische array. Echter door dat te doen wordt ook de __destruct() functie van de database class aangeroepen. Waarom doet ie dat eigenlijk?

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
<?php
class Database
{

static private $instances

static public function set($name, $configuration_file) {
  self::$instances[$name] = new Database($name, $configuration_file);
}


public function __destruct() {
  echo 'hallo';

}

?>


Als ik dan de set functie aanroep

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

Database::set('TEST', test.ini);

}

?>

Komt er "hallo" op het scherm...
Gewijzigd op 22/11/2010 09:22:31 door Ozzie PHP
 
TJVB tvb

TJVB tvb

22/11/2010 09:38:58
Quote Anchor link
Omdat uiteindelijk ook de __destruct aangeroepen wordt van je class. (Het object wordt aan het einde van een request ook weer weggegooid)
 
Ozzie PHP

Ozzie PHP

22/11/2010 09:49:00
Quote Anchor link
hmmm, oke... bedoel je dan dat telkens wanneer ik zeg "new Foo()" altijd de __destruct function (indien aanwezig) wordt aangeroepen?
 

Pagina: « vorige 1 2



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.