blob: 8990264d9204e4a7e79f92d0a2e516af10ca6ca2 (
plain)
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
--TEST--
Check for inherited old-style constructor.
--FILE--
<?php
class A
{
function A()
{
echo "In " . __METHOD__ . "\n";
}
}
class B extends A
{
}
class C extends B
{
}
echo "About to construct new B: \n";
$b = new B;
echo "Is B::B() callable?\n";
var_dump(is_callable(array($b, "B")));
echo "Is B::A() callable?\n";
var_dump(is_callable(array($b, "A")));
echo "About to construct new C: \n";
$c = new C;
echo "Is C::A() callable?\n";
var_dump(is_callable(array($c, "A")));
echo "Is C::B() callable?\n";
var_dump(is_callable(array($c, "B")));
echo "Is C::C() callable?\n";
var_dump(is_callable(array($c, "C")));
?>
--EXPECTF--
About to construct new B:
In A::A
Is B::B() callable?
bool(false)
Is B::A() callable?
bool(true)
About to construct new C:
In A::A
Is C::A() callable?
bool(true)
Is C::B() callable?
bool(false)
Is C::C() callable?
bool(false)
|