使用vfsstream,我是否能够要求或包含虚拟文件?

$structure = array(
    'classes' => array('Foo.php' => '<?php class Foo {} ?>')
);
\vfsStream::create($structure);

require_once(\vfsStream::url('classes').DIRECTORY_SEPARATOR.'Foo.php');

上面的代码在phpunit下无声地失效。
谢谢。

最佳答案

你试过了吗
require_once(\vfsStream::url('root/classes').DIRECTORY_SEPARATOR.'Foo.php');
是吗?对vfsStream::create($structure);的调用创建根目录,并且不使用$structures中的第一个条目作为根目录,因为此数组中可能有多个元素。另请参见https://github.com/mikey179/vfsStream/wiki/Createcomplexstructures上的文档。

10-04 21:41