我怎么写一个方法,让他返回的值是一个对象 我怎么写一个方法,让他返回是一个对象??------解决方案-------------------- 直接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是个什么东东? 妹子,你的基本功不扎实啊
Stellungnahme: Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn