PHP这种写法有什么优点?

查看:68
本文介绍了PHP这种写法有什么优点?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

经常看到一些第三方库有这样的写法
举个栗子

protected $outType = 'html';

public function setType($type)
{
    $this->outType = $type;
}

那么我在代码中调用的时候,如果要输出json格式的数据的话就必须先调一次setType这个方法

$this->setType('json');
...
...
...
$this->display(); //这个display里判断$outType属性是`html`还是`json`

我不解的是,为什么不在display()方法里直接传递一次参数呢,比如下面这样

$this->display('json');

这样还省了一次方法调用。 我想知道第一种的写法的好处主要表现在什么地方

谢谢大家了。

解决方案

第一种写法:你可以把它理解为:

function demo($type = 'html'){
    return $type;
}

只不过现在整体变成类了!因为本类在外面被继承调用时,有可能会根据调用方的不同比如:需要输出html或者json格式,但是我又不能直接修改protected $outType的值,那必然要有一种办法去间接修改该类里面的属性,因此就出现了下面的setType($type)方法,通过外部调用来达到修改内部属性值的效果!

这篇关于PHP这种写法有什么优点?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆