HEX
Server: Apache
System: Linux msm5694.mjhst.com 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64
User: camjab_ssh (1000)
PHP: 5.3.29
Disabled: NONE
Upload Files
File: //usr/src/php-7.2.34/tests/classes/private_members.phpt
--TEST--
ZE2 A private member is
--FILE--
<?php

class base
{
  private $member;

  function __construct()
  {
  	echo __METHOD__ . "(begin)\n";
    $this->member = 'base::member';
    $this->test();
  	echo __METHOD__ . "(end)\n";
  }

  function test()
  {
  	echo __METHOD__ . "\n";
    print_r($this);
  }
}

class derived extends base
{
  public $member = 'derived::member (default)';

  function __construct()
  {
  	echo __METHOD__ . "(begin)\n";
  	parent::__construct();
  	parent::test();
  	$this->test();
    $this->member = 'derived::member';
  	echo __METHOD__ . "(end)\n";
  }

  function test()
  {
  	parent::test();
  	echo __METHOD__ . "\n";
    print_r($this);
  }
}

$t = new derived;
$t->test();
unset($t);

echo "Done\n";

?>
--EXPECTF--
derived::__construct(begin)
base::__construct(begin)
base::test
derived Object
(
    [member] => derived::member (default)
    [member:base:private] => base::member
)
derived::test
derived Object
(
    [member] => derived::member (default)
    [member:base:private] => base::member
)
base::__construct(end)
base::test
derived Object
(
    [member] => derived::member (default)
    [member:base:private] => base::member
)
base::test
derived Object
(
    [member] => derived::member (default)
    [member:base:private] => base::member
)
derived::test
derived Object
(
    [member] => derived::member (default)
    [member:base:private] => base::member
)
derived::__construct(end)
base::test
derived Object
(
    [member] => derived::member
    [member:base:private] => base::member
)
derived::test
derived Object
(
    [member] => derived::member
    [member:base:private] => base::member
)
Done