0 关注者

Trait yii\test\FileFixtureTrait

实现类yii\test\ActiveFixture, yii\test\ArrayFixture, yii\test\BaseActiveFixture
可用版本2.0.14
源代码 https://github.com/yiisoft/yii2/blob/master/framework/test/FileFixtureTrait.php

FileFixtureTrait 提供从文件加载数据夹的功能。

公共属性

隐藏继承属性

属性 类型 描述 定义于
$dataDirectory string 包含夹具数据的目录路径或 路径别名 yii\test\FileFixtureTrait
$dataFile string|boolean 数据文件路径或 路径别名,其中包含 getData() 返回的夹具数据。 yii\test\FileFixtureTrait

受保护方法

隐藏继承方法

方法 描述 定义于
loadData() 返回夹具数据。 yii\test\FileFixtureTrait

属性详细信息

隐藏继承属性

$dataDirectory 公共属性

包含夹具数据的目录路径或 路径别名

public string $dataDirectory null
$dataFile 公共属性

数据文件路径或 路径别名,其中包含 getData() 返回的夹具数据。您可以将此属性设置为 false 以防止加载任何数据。

public string|boolean $dataFile null

方法详细信息

隐藏继承方法

loadData() 受保护方法

返回夹具数据。

默认实现将尝试通过包含由 $dataFile 指定的外部文件来返回夹具数据。该文件应返回将在插入数据库后存储在 data 中的数据数组。

protected array loadData ( $file, $throwException true )
$file string

数据文件路径

$throwException boolean

夹具数据文件不存在时是否抛出异常。

返回值 array

要放入数据库的数据

抛出 yii\base\InvalidConfigException

如果指定的数据文件不存在。

                protected function loadData($file, $throwException = true)
{
    if ($file === null || $file === false) {
        return [];
    }
    if (basename($file) === $file && $this->dataDirectory !== null) {
        $file = $this->dataDirectory . '/' . $file;
    }
    $file = Yii::getAlias($file);
    if (is_file($file)) {
        return require $file;
    }
    if ($throwException) {
        throw new InvalidConfigException("Fixture data file does not exist: {$file}");
    }
    return [];
}