首页 > Web开发 > 详细

php面向对象巧妙应用

时间:2015-10-23 21:36:35      阅读:313      评论:0      收藏:0      [点我收藏+]
class test 
{
	public $a,$b;
	public function __construct($a,$b)
	{
		$this->a=$a;
		$this->b=$b;
	}
	public function set($var, $val)
	{
		$this->$var .= $val;
		return $this;
	}
	public function get()
	{
		echo $this->a.‘-‘.$this->b;
	}
}
class test2 
{
	public $obj;
	public function __construct($obj)
	{
		$this->obj=$obj;
	}
	public function get()
	{
		$this->obj->get();
	}
}
$a = ‘aaaaa‘;
$b = ‘bbbbbb‘;
$set = ‘set‘;

/// 1、链条式调用方法
$test = new test($a, $b);
$test2 = new test2($test);
$test->$set(‘a‘, ‘111111‘)->$set(‘b‘, ‘222222‘); //通过字符串变量调用(类)方法  ps:php另一巧妙应用
 
/// 2、分次调用方法
$test->$set(‘a‘, ‘111111‘);
$test->$set(‘b‘, ‘222222‘);

unset($test);
$test2->get();

虽然test2实例化已传入test,但是test依然可以通过set方法设置参数,然后影响test2。

上述执行程序结果: ( 上面两种都可以得出相同结果 )

aaaaa111111-bbbbbb222222


php面向对象巧妙应用

原文:http://my.oschina.net/Kilar/blog/521378

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!