2012-06-27 105 views
0

只是寻找一些代码的一些清晰。清晰的代码

我期待在一个控制器类,它有一个名为$电网受保护的变量和内部存在有一个__construct功能连接到MongoDB的,后面还有就是这段代码:

$this->grid = $mongo->selectDB($database)->getGridFS(); 

进一步上在另一个类和方法的剧本我的代码

foreach ($this->grid->find() as $file) { 

难道我就在想,在foreach使用首先定义$这个 - >格为$ monmgo-> selectDB?

非常感谢

回答

0

这将是值得的PHP5 objects and classes阅读了为__construct()$this和方法调用链接PHP中基本的面向对象实现的概念。

PHP方法调用链接在您的代码示例中,这意味着一个方法的结果将传递到下一个(从左到右)。

$this->grid = $mongo->selectDB($database)->getGridFS(); 

因此,这段代码的执行方式:

$this->grid的结果将最终被一个新的MongoGridFS对象(基于getGridFS()返回类型。

foreach是在MongoGridFS的结果迭代对象find() method这将是MongoGridFSCursor