File extends Node
Interface File
Tags
Table of Contents
- BLACKLIST_FILES_REGEX = '\.(part|filepart)$'
- MIMETYPE_FOLDER = 'httpd/unix-directory'
- SPACE_NOT_COMPUTED = -1
- SPACE_UNKNOWN = -2
- SPACE_UNLIMITED = -3
- TYPE_FILE = 'file'
- TYPE_FOLDER = 'dir'
- changeLock() : mixed
- Check the type of an existing lock.
- copy() : Node
- Cope the file or folder to a new location
- delete() : void
- Delete the file or folder
- fopen() : resource
- Open the file as stream, resulting resource can be operated as stream like the result from php's own fopen
- getChecksum() : string
- Get the stored checksum for this file
- getContent() : string
- Get the content of the file as string
- getCreationTime() : int
- Get the creation date as unix timestamp
- getEtag() : string
- Get the Etag of the file or folder
- getExtension() : string
- Get the extension of this file
- getId() : int|null
- Get the file id of the file or folder
- getInternalPath() : string
- Get the path relative to the storage
- getMimePart() : string
- Get the first part of the mimetype of the file or folder i.e. 'image'
- getMimetype() : string
- Get the full mimetype of the file or folder i.e. 'image/png'
- getMimeType() : string
- Get the mimetype of the file
- getMountPoint() : IMountPoint
- Get the mountpoint the file belongs to
- getMTime() : int
- Get the modified date of the file or folder as unix timestamp
- getMtime() : int
- Get the last modified date as timestamp for the file or folder
- getName() : string
- Get the name of the file or folder
- getOwner() : IUser
- Get the owner of the file
- getParent() : Folder
- Get the parent folder of the file or folder
- getPath() : string
- Get the absolute path
- getPermissions() : int
- Get the permissions of the file or folder as bitmasked combination of the following constants \OCP\Constants::PERMISSION_CREATE \OCP\Constants::PERMISSION_READ \OCP\Constants::PERMISSION_UPDATE \OCP\Constants::PERMISSION_DELETE \OCP\Constants::PERMISSION_SHARE \OCP\Constants::PERMISSION_ALL
- getSize() : int
- Get the size in bytes for the file or folder
- getStorage() : Storage
- Get the storage the file or folder is storage on
- getType() : string
- Check whether this is a file or a folder
- getUploadTime() : int
- Get the upload date as unix timestamp
- hash() : string
- Compute the hash of the file Type of hash is set with $type and can be anything supported by php's hash_file
- isCreatable() : bool
- Check whether new files or folders can be created inside this folder
- isDeletable() : bool
- Check if a file or folder can be deleted
- isEncrypted() : bool
- Check whether the file is encrypted
- isMounted() : bool
- Check if a file or folder is mounted
- isReadable() : bool
- Check if the file or folder is readable
- isShareable() : bool
- Check if a file or folder can be shared
- isShared() : bool
- Check if a file or folder is shared
- isUpdateable() : bool
- Check if a file is writable
- lock() : mixed
- Acquire a lock on this file or folder.
- move() : Node
- Move the file or folder to a new location
- putContent() : mixed
- Write to the file from string data
- stat() : array
- Get metadata of the file or folder The returned array contains the following values: - mtime - size
- touch() : void
- Change the modified date of the file or folder If $mtime is omitted the current time will be used
- unlock() : mixed
- Release an existing lock.
Constants
BLACKLIST_FILES_REGEX
public
mixed
BLACKLIST_FILES_REGEX
= '\.(part|filepart)$'
Tags
MIMETYPE_FOLDER
public
mixed
MIMETYPE_FOLDER
= 'httpd/unix-directory'
Tags
SPACE_NOT_COMPUTED
public
mixed
SPACE_NOT_COMPUTED
= -1
Tags
SPACE_UNKNOWN
public
mixed
SPACE_UNKNOWN
= -2
Tags
SPACE_UNLIMITED
public
mixed
SPACE_UNLIMITED
= -3
Tags
TYPE_FILE
public
mixed
TYPE_FILE
= 'file'
Tags
TYPE_FOLDER
public
mixed
TYPE_FOLDER
= 'dir'
Tags
Methods
changeLock()
Check the type of an existing lock.
public
changeLock(int $targetType) : mixed
A shared lock can be changed to an exclusive lock is there is exactly one shared lock on the file, an exclusive lock can always be changed to a shared lock since there can only be one exclusive lock int he first place.
A locked exception will be thrown when these preconditions are not met. Note that this is also the case if no existing lock exists for the file.
Parameters
- $targetType : int
-
\OCP\Lock\ILockingProvider::LOCK_SHARED or \OCP\Lock\ILockingProvider::LOCK_EXCLUSIVE
Tags
Return values
mixed —copy()
Cope the file or folder to a new location
public
copy(string $targetPath) : Node
Parameters
- $targetPath : string
-
the absolute target path
Tags
Return values
Node —delete()
Delete the file or folder
public
delete() : void
Tags
fopen()
Open the file as stream, resulting resource can be operated as stream like the result from php's own fopen
public
fopen(string $mode) : resource
Parameters
- $mode : string
Tags
Return values
resource —getChecksum()
Get the stored checksum for this file
public
getChecksum() : string
Tags
Return values
string —getContent()
Get the content of the file as string
public
getContent() : string
Tags
Return values
string —getCreationTime()
Get the creation date as unix timestamp
public
getCreationTime() : int
If the creation time is not known, 0 will be returned
creation time is not set automatically by the server and is generally only available for files uploaded by the sync clients
Tags
Return values
int —getEtag()
Get the Etag of the file or folder
public
getEtag() : string
Tags
Return values
string —getExtension()
Get the extension of this file
public
getExtension() : string
Tags
Return values
string —getId()
Get the file id of the file or folder
public
getId() : int|null
Tags
Return values
int|null —getInternalPath()
Get the path relative to the storage
public
getInternalPath() : string
Tags
Return values
string —getMimePart()
Get the first part of the mimetype of the file or folder i.e. 'image'
public
getMimePart() : string
Tags
Return values
string —getMimetype()
Get the full mimetype of the file or folder i.e. 'image/png'
public
getMimetype() : string
Tags
Return values
string —getMimeType()
Get the mimetype of the file
public
getMimeType() : string
Tags
Return values
string —getMountPoint()
Get the mountpoint the file belongs to
public
getMountPoint() : IMountPoint
Tags
Return values
IMountPoint —getMTime()
Get the modified date of the file or folder as unix timestamp
public
getMTime() : int
Tags
Return values
int —getMtime()
Get the last modified date as timestamp for the file or folder
public
getMtime() : int
Tags
Return values
int —getName()
Get the name of the file or folder
public
getName() : string
Tags
Return values
string —getOwner()
Get the owner of the file
public
getOwner() : IUser
Tags
Return values
IUser —getParent()
Get the parent folder of the file or folder
public
getParent() : Folder
Tags
Return values
Folder —getPath()
Get the absolute path
public
getPath() : string
Tags
Return values
string —getPermissions()
Get the permissions of the file or folder as bitmasked combination of the following constants \OCP\Constants::PERMISSION_CREATE \OCP\Constants::PERMISSION_READ \OCP\Constants::PERMISSION_UPDATE \OCP\Constants::PERMISSION_DELETE \OCP\Constants::PERMISSION_SHARE \OCP\Constants::PERMISSION_ALL
public
getPermissions() : int
Tags
Return values
int —getSize()
Get the size in bytes for the file or folder
public
getSize([bool $includeMounts = true ]) : int
Parameters
- $includeMounts : bool = true
-
whether or not to include the size of any sub mounts, since 16.0.0
Tags
Return values
int —getStorage()
Get the storage the file or folder is storage on
public
getStorage() : Storage
Tags
Return values
Storage —getType()
Check whether this is a file or a folder
public
getType() : string
Tags
Return values
string —\OCP\Files\FileInfo::TYPE_FILE|\OCP\Files\FileInfo::TYPE_FOLDER
getUploadTime()
Get the upload date as unix timestamp
public
getUploadTime() : int
If the upload time is not known, 0 will be returned
Upload time will be set automatically by the server for files uploaded over DAV files created by Nextcloud apps generally do not have an the upload time set
Tags
Return values
int —hash()
Compute the hash of the file Type of hash is set with $type and can be anything supported by php's hash_file
public
hash(string $type[, bool $raw = false ]) : string
Parameters
- $type : string
- $raw : bool = false
Tags
Return values
string —isCreatable()
Check whether new files or folders can be created inside this folder
public
isCreatable() : bool
Tags
Return values
bool —isDeletable()
Check if a file or folder can be deleted
public
isDeletable() : bool
Tags
Return values
bool —isEncrypted()
Check whether the file is encrypted
public
isEncrypted() : bool
Tags
Return values
bool —isMounted()
Check if a file or folder is mounted
public
isMounted() : bool
Tags
Return values
bool —isReadable()
Check if the file or folder is readable
public
isReadable() : bool
Tags
Return values
bool —isShareable()
Check if a file or folder can be shared
public
isShareable() : bool
Tags
Return values
bool —isShared()
Check if a file or folder is shared
public
isShared() : bool
Tags
Return values
bool —isUpdateable()
Check if a file is writable
public
isUpdateable() : bool
Tags
Return values
bool —lock()
Acquire a lock on this file or folder.
public
lock(int $type) : mixed
A shared (read) lock will prevent any exclusive (write) locks from being created but any number of shared locks can be active at the same time. An exclusive lock will prevent any other lock from being created (both shared and exclusive).
A locked exception will be thrown if any conflicting lock already exists
Note that this uses mandatory locking, if you acquire an exclusive lock on a file it will block all other operations for that file, even within the same php process.
Acquiring any lock on a file will also create a shared lock on all parent folders of that file.
Note that in most cases you won't need to manually manage the locks for any files you're working with, any filesystem operation will automatically acquire the relevant locks for that operation.
Parameters
- $type : int
-
\OCP\Lock\ILockingProvider::LOCK_SHARED or \OCP\Lock\ILockingProvider::LOCK_EXCLUSIVE
Tags
Return values
mixed —move()
Move the file or folder to a new location
public
move(string $targetPath) : Node
Parameters
- $targetPath : string
-
the absolute target path
Tags
Return values
Node —putContent()
Write to the file from string data
public
putContent(string|resource $data) : mixed
Parameters
- $data : string|resource
Tags
Return values
mixed —stat()
Get metadata of the file or folder The returned array contains the following values: - mtime - size
public
stat() : array
Tags
Return values
array —touch()
Change the modified date of the file or folder If $mtime is omitted the current time will be used
public
touch([int $mtime = null ]) : void
Parameters
- $mtime : int = null
-
(optional) modified date as unix timestamp
Tags
unlock()
Release an existing lock.
public
unlock(int $type) : mixed
This will also free up the shared locks on any parent folder that were automatically acquired when locking the file.
Note that this method will not give any sort of error when trying to free a lock that doesn't exist.
Parameters
- $type : int
-
\OCP\Lock\ILockingProvider::LOCK_SHARED or \OCP\Lock\ILockingProvider::LOCK_EXCLUSIVE