PHP Класс Prado\Web\TAssetManager
TAssetManager provides a scheme to allow web clients visiting
private files that are normally web-inaccessible.
TAssetManager will copy the file to be published into a web-accessible
directory. The default base directory for storing the file is "assets", which
should be under the application directory. This can be changed by setting
the {@link setBasePath BasePath} property together with the
{@link setBaseUrl BaseUrl} property that refers to the URL for accessing the base path.
By default, TAssetManager will not publish a file or directory if it already
exists in the publishing directory and has an older modification time.
If the application mode is set as 'Performance', the modification time check
will be skipped. You can explicitly require a modification time check
with the function {@link publishFilePath}. This is usually
very useful during development.
TAssetManager may be configured in application configuration file as follows,
where {@link getBasePath BasePath} and {@link getBaseUrl BaseUrl} are
configurable properties of TAssetManager. Make sure that BasePath is a namespace
pointing to a valid directory writable by the Web server process.
Показать файл
Открыть проект
Примеры использования класса
Открытые методы
Защищенные методы
Метод |
Описание |
|
copyFile ( $src, $dst ) |
Copies a file to a directory. |
|
deployTarFile ( $path, $destination ) : boolean |
Extracts the tar file to the destination directory. |
|
hash ( $dir ) : string |
Generate a CRC32 hash for the directory path. Collisions are higher
than MD5 but generates a much smaller hash string. |
|
setPublished ( $values = [] ) |
|
|
Описание методов
copyDirectory()
публичный метод
If the destination directory does not exist, it will be created.
File modification time is used to ensure the copied files are latest.
copyFile()
защищенный метод
Copying is done only when the destination file does not exist
or has an older file modification time.
deployTarFile()
защищенный метод
N.B Tar file must not be compressed.
getBasePath()
публичный метод
getBaseUrl()
публичный метод
getPublished()
публичный метод
getPublishedPath()
публичный метод
This method does not perform any publishing. It merely tells you
if the file path is published, where it will go.
getPublishedUrl()
публичный метод
This method does not perform any publishing. It merely tells you
if the file path is published, what the URL will be to access it.
Generate a CRC32 hash for the directory path. Collisions are higher
than MD5 but generates a much smaller hash string.
This method is required by IModule and is invoked by application.
publishFilePath()
публичный метод
This method will copy the content in a directory (recursively) to
a web accessible directory and returns the URL for the directory.
If the application is not in performance mode, the file modification
time will be used to make sure the published file is latest or not.
If not, a file copy will be performed.
publishTarFile()
публичный метод
Each tar file must be accomplished with its own MD5 check sum file.
The MD5 file is published when the tar contents are successfully
extracted to the assets directory. The presence of the MD5 file
as published asset assumes that the tar file has already been extracted.
public publishTarFile ( $tarfile, $md5sum, $checkTimestamp = false ) : string |
Результат |
string |
URL path to the directory where the tar file was extracted. |
setBasePath()
публичный метод
The directory must be in namespace format.
setBaseUrl()
публичный метод
setPublished()
защищенный метод
protected setPublished ( $values = [] ) |
$values |
|
List of published assets |