1
0
mirror of https://github.com/php/php-src.git synced 2026-03-24 00:02:20 +01:00
Files
archived-php-src/Zend/tests/lsb/lsb_020.phpt
DanielEScherzer 275f63e7fd Zend/tests: organize some tests with subdirectories (2) (#16423)
Move more low-hanging fruit, creating new directories for the tests for:

* comparisons
* dynamic calls
* error messages
* `error_reporting()`
* exceptions
* `foreach()`
* garbage collection
* group `use` statements
* heredoc and nowdoc
* `goto` jumps
* late static binding
* magic methods
* namespaces
* numeric literal separators
* objects
* `settype()`
* cleaning of temporary values
* `unset()`

Additionally, move some tests into the existing subdirectory for `list()`
tests.

Drive-by fixes of some test numbers in the names of the `goto` tests.

Work towards GH-15631
2024-10-14 12:14:42 +01:00

49 lines
1.1 KiB
PHP

--TEST--
ZE2 Late Static Binding properties and methods declared as public and overridden as public.
--FILE--
<?php
class TestClass {
public static $staticVar;
public static function staticFunction() {
return 'TestClassFunction';
}
public static function testStaticVar() {
TestClass::$staticVar = 'TestClassStatic';
ChildClass1::$staticVar = 'ChildClassStatic';
return static::$staticVar;
}
public static function testStaticFunction() {
return static::staticFunction();
}
}
class ChildClass1 extends TestClass {
public static $staticVar;
public static function staticFunction() {
return 'ChildClassFunction';
}
}
class ChildClass2 extends TestClass {}
echo TestClass::testStaticVar() . "\n";
echo TestClass::testStaticFunction() . "\n";
echo ChildClass1::testStaticVar() . "\n";
echo ChildClass1::testStaticFunction() . "\n";
echo ChildClass2::testStaticVar() . "\n";
echo ChildClass2::testStaticFunction() . "\n";
?>
--EXPECT--
TestClassStatic
TestClassFunction
ChildClassStatic
ChildClassFunction
TestClassStatic
TestClassFunction