【问题标题】:Using RecursiveIteratorIterator with namespaces?将 RecursiveIteratorIterator 与命名空间一起使用?
【发布时间】:2016-09-14 02:48:30
【问题描述】:

我的问题是,当我使用命名空间时,我无法使用标准 PHP 库的 RecursiveIteratorIterator 类。 以下代码:

<?php namespace mynamespace;

    $arr = Array("abc", Array("def", "ghi", Array("jkl")));
    $it = new RecursiveIteratorIterator(new RecursiveArrayIterator($arr));
    $result = iterator_to_array($it, false);

?>

返回:

PHP 致命错误:未捕获的错误:在...中找不到类“mynamespace\RecursiveIteratorIterator”

【问题讨论】:

标签: php namespaces iterator standard-library spl


【解决方案1】:

你需要用\引用全局命名空间:

$it = new \RecursiveIteratorIterator(new \RecursiveArrayIterator($arr));

或者您可以使用use 将它们导入当前命名空间:

namespace mynamespace;
use RecursiveIteratorIterator;
use RecursiveArrayIterator;

详情请见Using namespaces: Basics

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-01-11
    • 2021-08-26
    • 1970-01-01
    • 2014-10-13
    • 2016-04-23
    • 1970-01-01
    • 2019-01-17
    • 1970-01-01
    相关资源
    最近更新 更多