PHP这种写法有什么优点?
本文介绍了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屋!
查看全文