Ich weiß, dass sobald ein Skript endet, all objects are destroyed und Speicher zurückgegeben wird. Tritt dies auch bei Objekten mit Funktionsumfang auf, wenn die Funktion endet, die ohnehin nicht erreichbar ist?Erfasst PHP-Müllfunktionsobjekte nach einem Anruf zurück?
Zum Beispiel mache ich mir Gedanken über Speicherlecks in meinen PHPUnit-Tests, bei denen ich für fast jeden Test ein neues Objekt erstelle. Wird dies irgendwann meinen Haufen überlaufen, wenn ich genug Tests laufen lasse?
public function testMyFunction()
{
// Arrange
$myObject = new MyClass();
// Act
$return = $myObject->myFunction();
// Assert
$this->assertEquals(true, $return);
}
Soll ich manuell unset
ting sie für lang andauernde sein Skripte in einem „Absterge“ Abschnitt?
public function testMyFunction()
{
// Arrange
$myObject = new MyClass();
// Act
$return = $myObject->myFunction();
// Assert
$this->assertEquals(true, $return);
// Absterge
unset($myObject);
}
Entschuldigung, es hat so lange gedauert, bis ich meine Antwort getestet habe. Die "__destruct" -Methode zum Testen zu verwenden, war die offensichtliche Erkenntnis, die ich übersehen hatte. Vielen Dank!! –