php-src/tests/classes/factory_001.phpt

34 lines
474 B
Plaintext
Raw Normal View History

--TEST--
ZE2 factory objects
--FILE--
<?php
class Circle {
2020-02-03 21:52:20 +00:00
function draw() {
echo "Circle\n";
}
}
class Square {
2020-02-03 21:52:20 +00:00
function draw() {
print "Square\n";
}
}
function ShapeFactoryMethod($shape) {
2020-02-03 21:52:20 +00:00
switch ($shape) {
case "Circle":
return new Circle();
case "Square":
return new Square();
}
}
ShapeFactoryMethod("Circle")->draw();
ShapeFactoryMethod("Square")->draw();
?>
--EXPECT--
Circle
Square