分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 软件开发

PHP工厂模式计算面积与周长

发布时间:2023-09-06 02:17责任编辑:胡小海关键词:PHP
<?php
interface InterfaceShape
{
???function getArea();
???function getCircumference();
}

/**
* 矩形
*/
class Rectangle implements InterfaceShape
{
???private $width;
???private $height;
???public function __construct($width,$height){
???????$this->width=$width;
???????$this->height=$height;
???}
???public function getArea(){
???????return $this->width*$this->height;
???}
???public function getCircumference(){
???????return 2*$this->width+2*$this->height;
???}
}
/**
* 圆
*/
class circle implements InterfaceShape{
???private $redius;
???public function __construct($redius){
???????$this->redius = $redius;
???}
???public function getArea(){
???????return M_PI*pow($this->redius,2);
???}
???public function getCircumference(){
???????return M*PI*2*$this->redius;
???}
}
class FactoryShape{//func_get_arg(索引)返回当前函数指定索引的参数值,返回string格式;
???static public function create(){
???????switch (func_num_args()) {
???????????case 1:
???????????????return new circle(func_get_arg(0));
???????????case 2:
???????????????return new Rectangle(func_get_arg(0),func_get_arg(1));
???????????default:
???????????????break;
???????}
???}
}
$rect = FactoryShape::create(5,5);
var_dump($rect);
echo "<br>";
$circle = FactoryShape::create(4);
var_dump($circle);
?>

PHP工厂模式计算面积与周长

原文地址:https://www.cnblogs.com/isuansuan/p/9767105.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved