【问题标题】:How do I 'use' the IteratorAggregate interface, PHP can't find it?如何“使用” IteratorAggregate 接口,PHP 找不到它?
【发布时间】:2015-10-06 22:27:05
【问题描述】:

我有一个要实现 IteratorAggregate 的类。我声明:

class Email implements IteratorAggregate {

但是当我运行代码时,我得到了:

尝试从命名空间加载接口“IteratorAggregate” “公司名称\ConsoleBundle\实体”。您是否忘记了“使用”声明 对于另一个命名空间?

那么我应该在 implelement 'IteratorAggregate' 接口中添加什么命名空间。我见过的所有示例都没有包含任何 use 或 require 语句,它应该作为标准包含在 PHP5 中,因此这不是安装问题。

任何想法我做错了什么?

【问题讨论】:

  • IteratorAggregate 在全局命名空间中,所以\IteratorAggregate

标签: php interface iterator


【解决方案1】:

当你使用自己的命名空间并且你想使用标准类时,你必须这样拼写

class Email implements \IteratorAggregate {

【讨论】:

  • 谢谢。我知道这一定是我错过了一些愚蠢的事情!
【解决方案2】:

要“使用”全局命名空间中的类,请在它们前面加上反斜杠:

use \IteratorAggregate;

class Email implements IteratorAggregate { ... } 

【讨论】:

    猜你喜欢
    • 2018-08-15
    • 2012-11-17
    • 1970-01-01
    • 2011-04-11
    • 2018-03-14
    • 2011-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多