1. Go to this page and download the library: Download webiny/storage library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
webiny / storage example snippets
// use StorageTrait
// Get your storage service. Storage name is part of the service name after 'Storage.'
$storage = $this->storage('LocalStorage');
// Create a file object with a key (file name) and a $storage instance
$file = new File('file.txt', $storage);
$contents = file_get_contents('http://www.w3schools.com/images/w3schoolslogoNEW310113.gif');
$file->setContents($contents);
// Get your storage service
$storage = $this->storage('LocalStorage');
// Create a directory object with a key (directory name), $storage instance
$dir = new Directory('2013', $storage);
// Loop through directory object
foreach($dir as $item){
if($item->isDirectory()){
// Do something with child Directory object
} else {
// Do something with File object
}
}
// Get your storage service
$storage = $this->storage('LocalStorage');
// Read recursively
$dir = new Directory('2013', $storage, true);
// Get only PDF files
$pdfFiles = $dir->filter('*.pdf');
// Count ZIP files
$zipFiles = $dir->filter('*.zip')->count();
// Get files starting with 'log_'
$logFiles = $dir->filter('log_*');
// You can also pass the result of filter directly to loops as `filter()` returns a new Directory object
foreach($dir->filter('*.txt') as $file){
// Do something with your file
}
// Get your storage service
$storage = $this->storage('LocalStorage');
// Read recursively and don't filter
$dir = new Directory('2013', $storage, true);
// Now you can manipulate the whole directory
// Get number of all ZIP files in the directory tree
$zipFiles = $dir->filter('*.zip')->count();
// Get number of all RAR files in the directory tree
$zipFiles = $dir->filter('*.rar')->count();
// Get number of all LOG files in the directory tree
$zipFiles = $dir->filter('*.log')->count();
// Now output all files in the directory without filtering them
foreach($dir as $file){
echo $file->getKey();
}
// Get your storage service
$storage = $this->storage('LocalStorage');
// Get directory
$dir = new Directory('2013', $storage);
// This will delete the whole directory structure and fire FILE_DELETED event for each file along the way
$dir->delete();
// If you don't want the events to be fired, pass as second parameter `false`:
$dir->delete(false);
class Test {
use EventManagerTrait;
public function index(){
// Listen for StorageEvent::FILE_SAVED
$this->eventManager()->listen(StorageEvent::FILE_SAVED)->handler(function(StorageEvent $event){
// Get the file object
$file = $event->getFile();
});
}
}
class Test {
use EventManagerTrait;
public function index(){
// Listen for StorageEvent::FILE_RENAMED
$this->eventManager()->listen(StorageEvent::FILE_RENAMED)->handler(function(StorageEvent $event){
// Get the file object
$file = $event->getFile();
// $file now contains the file object with new key, and we need to get the old key
$oldKey = $event->oldKey;
$newKey = $file->getKey();
});
}
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.