Arquivos
hhvm/hphp/test/quick/class_implements.php
T
ptarjan 503f75d08b Rename test directories
These names don't make sense now that we run both suites the same
way.
2013-04-17 09:06:51 -07:00

48 linhas
1.1 KiB
PHP

<?php
interface IA {}
interface IB {}
class Base implements IA, IB {}
class Derived extends Base implements IA {}
interface IC {}
class DerivedDerived extends Derived implements IC {}
interface ID extends IA {}
interface IE extends ID {}
interface IG extends IE, IB {}
// IE, ID, IA
class LotsOfInterfaces implements IE {}
// IG, IE, ID, IA, IB
class MostOfTheInterfaces implements IG {}
// literally all of them. literally.
class AllTheInterfaces extends MostOfTheInterfaces implements IC {}
echo "interfaces of Base:\n";
$x = class_implements('Base');
ksort($x);
var_dump($x);
echo "\ninterfaces of Derived:\n";
$x = class_implements('Derived');
ksort($x);
var_dump($x);
echo "\ninterfaces of DerivedDerived:\n";
$x = class_implements('DerivedDerived');
ksort($x);
var_dump($x);
echo "\ninterfaces of LotsOfInterfaces:\n";
$x = class_implements('LotsOfInterfaces');
ksort($x);
var_dump($x);
echo "\ninterfaces of MostOfTheInterfaces:\n";
$x = class_implements('MostOfTheInterfaces');
ksort($x);
var_dump($x);
echo "\ninterfaces of AllTheInterfaces:\n";
$x = class_implements('AllTheInterfaces');
ksort($x);
var_dump($x);