Skip to content

StorageFileInfoData — 文件信息数据对象

  • 文件位置: kernel/Foundation/FileSystem/Storage/StorageFileInfoData.php
  • 命名空间: kernel\Foundation\FileSystem\Storage
  • 继承: 继承 kernel\Foundation\Object\DataObject
  • 是否可继承: 是

描述单个文件信息的只读数据对象,DataObject 的唯一子类。实例化时一次性赋值,之后只读。构造时会自动用 path + name 拼接 filePath(除非显式传入 filePath)。

属性

属性类型默认可见性说明
$keystring|nullnullprotected文件键
$namestring|nullnullprotected文件名称
$sourceFileNamestring|nullnullprotected原文件名称
$pathstring|nullnullprotected文件路径(相对存储根目录的目录部分)
$extensionstring|nullnullprotected文件扩展名
$sizeint|nullnullprotected文件大小(字节)
$filePathstring|nullnullprotected文件保存路径(完整,含目录与文件名)
$widthint|nullnullprotected媒体文件宽度;非媒体文件为 null
$heightint|nullnullprotected媒体文件高度;非媒体文件为 null
$remoteboolfalseprotected是否远程存储
$platformstring"local"protected存储平台
$urlstring|nullnullprotected文件访问 URL
$previewURLstring|nullnullprotected预览 URL 链接
$downloadURLstring|nullnullprotected下载 URL 链接
$transferPreviewURLstring|nullnullprotected中转预览 URL 链接
$transferDownloadURLstring|nullnullprotected中转下载 URL 链接
$accessControlstring|boolfalseprotected访问权限控制标签
$ownerIdstring|boolfalseprotected所属用户标识

方法速查表

方法作用
__construct($data)构造:自动拼接 filePath,一次性赋值

方法

__construct($data) — 构造

自动拼接 filePath:当传入数据未显式提供 filePath(或其为空)、且同时提供 pathname 时,用 FileHelper::combinedFilePath($path, $name) 拼接。随后交给父类 DataObject 填充属性(缺键保留默认值)。

参数

参数类型默认说明
$dataarray|object文件信息数据

返回值

  • 无。

示例

php
$info = new StorageFileInfoData([
    "key" => "avatars/a.png",
    "path" => "avatars",
    "name" => "a.png",
]);
$info->filePath;   // "avatars/a.png"(自动拼接)

继承自 DataObjecttoArray() / toJson() / has() / get() / keys() 等只读容器方法可用,见《Object/DataObject》页。