Class yii\helpers\BaseFileHelper
继承 | yii\helpers\BaseFileHelper |
---|---|
子类 | yii\helpers\FileHelper |
可用版本自 | 2.0 |
源码 | https://github.com/yiichina/yii2/blob/api/framework/helpers/BaseFileHelper.php |
BaseFileHelper 为 yii\helpers\FileHelper 提供了具体的实现方法。
不要使用 BaseFileHelper 类。使用 yii\helpers\FileHelper 类来代替。
公共属性
属性 | 类型 | 描述 | 被定义在 |
---|---|---|---|
$mimeAliasesFile | string | 包含 MIME 别名的 PHP 文件的路径(或别名)。 | yii\helpers\BaseFileHelper |
$mimeMagicFile | string | 包含 MIME 类型信息的 PHP 文件的路径(或别名)。 | yii\helpers\BaseFileHelper |
公共方法
方法 | 描述 | 被定义在 |
---|---|---|
copyDirectory() | 将整个目录复制为另一个目录。 文件和子目录也将被复制。 | yii\helpers\BaseFileHelper |
createDirectory() | 创建一个新目录。 | yii\helpers\BaseFileHelper |
filterPath() | 检查给定的文件路径是否满足过滤选项。 | yii\helpers\BaseFileHelper |
findDirectories() | 返回在指定目录和子目录下找到的目录。 | yii\helpers\BaseFileHelper |
findFiles() | 返回在指定目录和子目录下找到的文件。 | yii\helpers\BaseFileHelper |
getExtensionsByMimeType() | 根据给定 MIME 类型确定扩展。 该方法将使用扩展名和 MIME 类型之间的本地映射。 | yii\helpers\BaseFileHelper |
getMimeType() | 确定指定文件的 MIME 类型。
此方法首先尝试基于 finfo_open 确定 MIME 类型。
如果 fileinfo 扩展未安装,
当 $checkExtension 设置 true 的时候它将基于 getMimeTypeByExtension()。 |
yii\helpers\BaseFileHelper |
getMimeTypeByExtension() | 根据指定文件的扩展名确定 MIME 类型。 该方法将使用扩展名和 MIME 类型之间的本地映射。 | yii\helpers\BaseFileHelper |
localize() | 返回指定文件的本地化版本。 | yii\helpers\BaseFileHelper |
normalizePath() | 规范化文件/目录路径。 | yii\helpers\BaseFileHelper |
removeDirectory() | 递归地删除一个目录(及其所有内容)。 | yii\helpers\BaseFileHelper |
unlink() | 以跨平台的方式删除文件或符号链接 | yii\helpers\BaseFileHelper |
受保护的方法
方法 | 描述 | 被定义在 |
---|---|---|
loadMimeAliases() | 从指定文件加载 MIME 别名。 | yii\helpers\BaseFileHelper |
loadMimeTypes() | 从指定的文件加载 MIME 类型。 | yii\helpers\BaseFileHelper |
normalizeOptions() | yii\helpers\BaseFileHelper |
常量
常量 | 值 | 描述 | 被定义在 |
---|---|---|---|
PATTERN_CASE_INSENSITIVE | 32 | yii\helpers\BaseFileHelper | |
PATTERN_ENDSWITH | 4 | yii\helpers\BaseFileHelper | |
PATTERN_MUSTBEDIR | 8 | yii\helpers\BaseFileHelper | |
PATTERN_NEGATIVE | 16 | yii\helpers\BaseFileHelper | |
PATTERN_NODIR | 1 | yii\helpers\BaseFileHelper |
属性详情
包含 MIME 别名的 PHP 文件的路径(或别名)。
包含 MIME 类型信息的 PHP 文件的路径(或别名)。
方法详情
将整个目录复制为另一个目录。 文件和子目录也将被复制。
public static void copyDirectory($src, $dst, $options = []) | ||
$src | string | 源目录 |
$dst | string | 目标目录 |
$options | array | 目录复制选项。有效的选项是:
|
throws | yii\base\InvalidArgumentException | 如果无法打开目录抛出异常 |
---|
创建一个新目录。
这个方法类似于 PHP mkdir()
函数,
只不过它使用 chmod()
来设置创建目录的权限,
以避免 umask
设置的影响。
public static boolean createDirectory($path, $mode = 0775, $recursive = true) | ||
$path | string | 要创建的目录的路径。 |
$mode | integer | 为创建的目录设置的权限。 |
$recursive | boolean | 如果父目录不存在是否需要创建它们。 |
return | boolean | Whether 目录创建成功 |
---|---|---|
throws | yii\base\Exception | 如果无法创建目录(例如 php 错误导致并行修改) |
检查给定的文件路径是否满足过滤选项。
public static boolean filterPath($path, $options) | ||
$path | string | 要检查的文件或目录的路径 |
$options | array | 过滤选项。 有关支持的选项的解释请参考 findFiles()。 |
return | boolean | 文件或目录是否满足筛选选项。 |
---|
返回在指定目录和子目录下找到的目录。
public static array findDirectories($dir, $options = []) | ||
$dir | string | 将在其中查找文件的目录。 |
$options | array | 目录搜索选项。有效选项是:
|
return | array | 目录下找到的目录,没有特别的顺序。排序取决于所使用的文件系统。 |
---|---|---|
throws | yii\base\InvalidArgumentException | 如果目录无效抛出异常。 |
返回在指定目录和子目录下找到的文件。
public static array findFiles($dir, $options = []) | ||
$dir | string | 将在其中查找文件的目录。 |
$options | array | 目录搜索选项。有效选项是:
|
return | array | 在目录下找到的数组文件,没有特别的顺序。排序取决于使用的文件系统。 |
---|---|---|
throws | yii\base\InvalidArgumentException | 如果目录无效则抛出异常。 |
根据给定 MIME 类型确定扩展。 该方法将使用扩展名和 MIME 类型之间的本地映射。
public static array getExtensionsByMimeType($mimeType, $magicFile = null) | ||
$mimeType | string | 文件的 MIME 类型。 |
$magicFile | string | 包含所有可用 MIME 类型信息的文件的路径(或别名)。 如果没有设置,将使用 $mimeMagicFile 指定的文件。 |
return | array | 对应于指定 MIME 类型的扩展 |
---|
确定指定文件的 MIME 类型。
此方法首先尝试基于 finfo_open 确定 MIME 类型。
如果 fileinfo
扩展未安装,
当 $checkExtension
设置 true 的时候它将基于 getMimeTypeByExtension()。
public static string getMimeType($file, $magicFile = null, $checkExtension = true) | ||
$file | string | 文件名称。 |
$magicFile | string | 可选的魔术数据库文件名(或别名),通常类似 |
$checkExtension | boolean | 在 |
return | string | MIME 类型(e.g. |
---|---|---|
throws | yii\base\InvalidConfigException | 当 |
根据指定文件的扩展名确定 MIME 类型。 该方法将使用扩展名和 MIME 类型之间的本地映射。
public static string|null getMimeTypeByExtension($file, $magicFile = null) | ||
$file | string | 文件的名字。 |
$magicFile | string | 包含所有可用 MIME 类型信息的文件的路径(或别名)。 如果没有设置,将使用 $mimeMagicFile 指定的文件。 |
return | string|null | MIME 类型。如果无法确定 MIME 类型,则返回 Null。 |
---|
从指定文件加载 MIME 别名。
protected static array loadMimeAliases($aliasesFile) | ||
$aliasesFile | string | 包含 MIME 类型别名的文件的路径(或别名)。 如果没有设置,将使用 $mimeAliasesFile 指定的文件。 |
return | array | 从文件扩展名到 MIME 类型的映射 |
---|
从指定的文件加载 MIME 类型。
protected static array loadMimeTypes($magicFile) | ||
$magicFile | string | 包含所有可用 MIME 类型信息的文件的路径(或别名)。 如果没有设置,将使用 $mimeMagicFile 指定的文件。 |
return | array | 从文件扩展名到 MIME 类型的映射 |
---|
返回指定文件的本地化版本。
基于指定的语言代码进行搜索。 特别是,将在子目录下查找同名的文件 它的名字与语言代码一样。比如说,找到某个文件 "path/to/view.php" 包含语言代码 "zh-CN",本地化文件将在 "path/to/zh-CN/view.php" 这里被查找。 如果这个文件没有被找到,它将尝试使用 "zh" 下的语言代码进行备用, 例如 "path/to/zh/view.php"。如果找不到,将返回原始文件。
如果目标语言代码和源语言代码相同, 原始文件将被返回。
public static string localize($file, $language = null, $sourceLanguage = null) | ||
$file | string | 原始文件 |
$language | string | 文件应该本地化到的目标语言。 如果没有去设置,将使用 yii\base\Application::$language 的值。 |
$sourceLanguage | string | 原始文件所包含的语言。 如果没有去设置,将使用 yii\base\Application::$sourceLanguage 的值。 |
return | string | 匹配的本地化文件,如果本地文件未找到可以使用原始文件。 如果目标语言代码和源语言代码相同,将返回原始文件。 |
---|
protected static array normalizeOptions(array $options) | ||
$options | array | 原始选项 |
return | array | 标准化选项 |
---|
规范化文件/目录路径。
规范化做了以下工作:
- 将所有目录分隔符转换为
DIRECTORY_SEPARATOR
(e.g. "\a/b\c" becomes "/a/b/c") - 删除末尾的目录分隔符(e.g. "/a/b/c/" becomes "/a/b/c")
- 将多个连续斜杠转换为单个斜杠(e.g. "/a///b/c" becomes "/a/b/c")
- 移除 ".." 和 "." 基于它们的定义(e.g. "/a/./b/../c" becomes "/a/c")
public static string normalizePath($path, $ds = DIRECTORY_SEPARATOR) | ||
$path | string | 要标准化的文件/目录路径 |
$ds | string | 要在规范化结果中使用的目录分隔符。默认是 |
return | string | 规范化文件/目录路径 |
---|
递归地删除一个目录(及其所有内容)。
public static void removeDirectory($dir, $options = []) | ||
$dir | string | 递归删除的目录。 |
$options | array | 目录删除选项。有效的选项是:
|
throws | yii\base\ErrorException | 失败时抛出的异常 |
---|
以跨平台的方式删除文件或符号链接
public static boolean unlink($path) | ||
$path | string |