Download the PHP package popphp/pop-storage without Composer
On this page you can find all versions of the php package popphp/pop-storage. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download popphp/pop-storage
More information about popphp/pop-storage
Files in popphp/pop-storage
Package pop-storage
Short Description Pop Storage Component for Pop PHP Framework
License BSD-3-Clause
Homepage http://www.popphp.org/
Informations about the package pop-storage
pop-storage
- Overview
- Install
- Quickstart
- Adapters
- AWS S3
- Microsoft Azure
- Local Disk
- Working with Files
- Directories
- Helper Methods
Overview
pop-storage
is a storage component that provides interchangeable adapters to easily manage and switch
between different storage resources. Supported storage adapters are:
- AWS S3
- Microsoft Azure
- Local Disk
NOTE: The use of enterprise storage solutions like AWS S3 and Microsoft Azure require credentials and permissions to be created in their respective administration portals. Please refer to the online documentation, guidelines and polices for whichever storage platform to which you are attempting to connect your application using this component. Please take care in granting access and assigning permissions to your application instance. Always follow the recommended security policies and guidelines of your chosen storage platform.
pop-storage
is a component of the Pop PHP Framework.
Top
Install
Install pop-storage
using Composer.
composer require popphp/pop-storage
Or, require it in your composer.json file
"require": {
"popphp/pop-storage" : "^2.0.0"
}
Top
Quickstart
A storage object can be created using one of the factories:
Then a local file can be uploaded to the storage platform:
Or, a remote file can be downloaded from the storage platform, which will return the file contents to be utilized within the application:
Top
Adapters
By default, there are 3 available adapters. All of the adapters share the same interface and
are interchangeable. Other adapters can be created, as long as they implement the same
Pop\Storage\StorageInterface
.
AWS S3
The Amazon AWS S3 adapter interfaces with AWS S3 and requires the following credentials and access information to be obtained from the AWS administration console:
- AWS Key
- AWS Secret
- AWS Region
- AWS Version (usually
latest
) - The AWS S3 bucket to access (in the format
s3://bucket
)
Microsoft Azure
The Microsoft Azure adapter interfaces with Microsoft Azure Storage and requires the following credentials and access information to be obtained from the AWS administration console:
- Account Name
- Account Key
- The Azure container to access (in the format
container
)
Local Disk
The local disk adapter allows simple management of files and folders on the local disk of the application using the same interface as the other adapters. This can be useful for local development and testing, before switching to one of the enterprise adapters for production.
It only needs the main directory to serve as the base location:
Top
Working with Files
There are a number of available methods to assist in the uploading and downloading of files to and from the storage platform, as well as obtaining general data and information about them.
Put a local file on the remote location
Use a file on disk:
Use a stream of file contents:
Fetch file contents
This method returns the file contents to be utilized within the application:
Fetch file info
This method uses a custom request (i.e, a HEAD
request) to return general information
about a file without downloading the file's contents:
Upload files from a server request ($_FILES format)
List Files
You can list or search the files in the current location:
List all or search all directories and files together:
Copy or move file from one remote location to another
Copy of move file from/to an external location on the same remote storage resource
This allows you to copy or move files between different AWS buckets or Azure containers that are outside the currently referenced bucket or container.
To External
From External
Delete file
Top
Directories
The AWS and Azure storage resources don't explicitly support "directories" or "folders." However, they
do still allow for a "directory-like" structure in the form of "prefixes." The pop-storage
component
normalizes that functionality into a more "directory-like" interface that allows the ability to change
directories, make directories and remove directories.
NOTE: The creation or removal of empty directories is only allowed with the S3 and local adapters. The Azure storage resource doesn't allow the explicit creation or removal of empty directories. Instead, a new "directory" (prefix) is created automatically created with an uploaded file that utilizes a prefix. Conversely, a "directory" (prefix) is automatically removed when the last file that utilizes the prefix is deleted.
List Directories
You can list or search the directories in the current location:
List all or search all directories and files together:
Top
Helper Methods
There are a number of helper methods to provide information on file status or things like whether or not the file exists.
Top
All versions of pop-storage with dependencies
popphp/pop-dir Version ^4.0.0
popphp/pop-http Version ^5.1.1
popphp/pop-utils Version ^2.1.0
aws/aws-sdk-php Version ^3.283.11