欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

小弟我如何写一个方法,让他返回的值是一个对象

更新时间: 2014-05-16 02:26:07 责任编辑: Author_N5

 

我怎么写一个方法,让他返回的值是一个对象
我怎么写一个方法,让他返回是一个对象??

--参考方法--
直接return就行
--参考方法--
PHP code
class myObject{
    // ......
}

function returnObject(){
    $mo = new $myObject();
    return $mo;
}

--参考方法--
3楼那个正确
如果是一个类中的成员函数的话,返回伪变量$this就是返回一个对象(它本身)
--参考方法--
returnObject里就new 实例化myObject类。并返回。有什么不理解的?



探讨

可以在详细一点吗
有一点没有理解透。
引用:

PHP code
class myObject{
// ......
}

function returnObject(){
$mo = new $myObject();
return $mo;
}

--参考方法--
C# code

class MyClass
{
......
}

public MyClass ReturnObject(MyClass myClass)
{
MyClass a=new MyClass();
if (null != myClass)
{
a=myClass; 
}
return a;
}
--参考方法--
见4楼


探讨

是这样的。我执行了一个方法,方法本来是返回string类型的数据
而这个数据在其它地方也用得到,所以我想返回一个对象。这样在用的时候,我就可以这样写成类拟这样的写法

$a->$b()->$c()

只是觉得这样写起来更简洁。所以才有这样的问题。引用:

可以在详细一点吗
有一点没有理解透。
引用:
……

--参考方法--
return $this->$a;

这个$this->$a是个什么东东?

妹子,你的基本功不扎实啊
--参考方法--
探讨

class myObject{

public function a($a){

return $this->$a;
}

public function b($b){

echo $b;
}
}
$c=new myObject();

$c->a('1aaaaa')->b();

为什么不行呢,没有输出??引用 10 楼 helloyou0……

--参考方法--
修正一下
例子中的b方法不用返回对象,因为他是作为终结
例子里如果b方法后再跟一个a方法的话就会出错
--参考方法--
翻了30秒居然没找到合适的例子,
只好亲自动手了

class 人 {
private $name='';
private $肚子=array();

public function __construct($name){
$this->name=$name;
}

public function 吃($好吃的){
$this->肚子[]=$好吃的;
return $this;
}

public function 吐(){
$东东=array_pop($this->肚子);
if(!empty($东东)){
echo $this->name.'吐了'.$this->东东."\n";
}
return $this;
}

}

$我=new 人('helloyou0');
$我->吃('青菜')->吐()->吃('鸡')->吃('鸭')->吐()->吐();



--参考方法--
你是不是要这样子?


<?php


class laaaaa{
public $b;
public function b($b){
$this -> b = $b;
echo $this -> b;
}
}

class myObject{

public $laaaaa;

public function a($a){

return $this->$a = new $a();
}


}
$c=new myObject();


$c->a('laaaaa')->b('=_=');

?>


探讨

代表返回字符串的对象啊引用:

return $this->$a;

这个$this->$a是个什么东东?

妹子,你的基本功不扎实啊
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-05-16 02:26:07
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/573691/
本文WWW.DOC100.NET DOC100.NET版权所有。