bug20240.phpt 670 Bytes
Newer Older
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 30 31 32 33 34 35 36 37 38 39 40 41 42
--TEST--
Bug #20240 (order of destructor calls)
--SKIPIF--
<?php if (version_compare(zend_version(), '2.0.0-dev', '<')) die('skip ZendEngine 2 is needed'); ?>
--FILE--
<?php

class test
{
    public $member;

    function test() {
        $this->member = 1;
        register_shutdown_function(array($this, 'destructor'));
    }

    function destructor() {
        print __METHOD__ . "\n";
    }

    function __destruct() {
        print __METHOD__ . "\n";
    }

    function add() {
        $this->member += 1;
        print $this->member."\n";
    }
}

$t = new test();

$t->add();
$t->add();

echo "Done\n";
?>
--EXPECT--
2
3
Done
test::__destruct
43
test::destructor