Rumah  >  Artikel  >  pembangunan bahagian belakang  >  小弟我如何写一个方法,让他返回的值是一个对象

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

WBOY
WBOYasal
2016-06-13 13:51:26864semak imbas

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

------解决方案--------------------
直接return就行
------解决方案--------------------

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

function returnObject(){
    $mo = new $myObject();
    return $mo;
}
<br><font color="#e78608">------解决方案--------------------</font><br>3楼那个正确<br>如果是一个类中的成员函数的话,返回伪变量$this就是返回一个对象(它本身)
<br><font color="#e78608">------解决方案--------------------</font><br>returnObject里就new 实例化myObject类。并返回。有什么不理解的?<br><br><br><br>
探讨

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

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');
$我->吃('青菜')->吐()->吃('鸡')->吃('鸭')->吐()->吐();



------解决方案--------------------
你是不是要这样子?




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是个什么东东?

妹子,你的基本功不扎实啊
Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn