PHP code example of arshad1114 / laravel-dms-disk

1. Go to this page and download the library: Download arshad1114/laravel-dms-disk 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/ */

    

arshad1114 / laravel-dms-disk example snippets


Storage::disk('dms')->put('test/hello.txt', 'Hello World!');
Storage::disk('dms')->get('test/hello.txt');
Storage::disk('dms')->delete('test/hello.txt');

// ❌ what developers do today — repeated in every service
$response = Http::attach('file', $contents, 'invoice.pdf')
    ->post('https://dms.internal/upload', ['path' => 'invoices/001.pdf']);

// ✅ with laravel-dms-disk
Storage::disk('dms')->put('invoices/001.pdf', $contents);
Storage::disk('dms')->get('invoices/001.pdf');
Storage::disk('dms')->delete('invoices/001.pdf');

'disks' => [
    // ... your existing disks

    'dms' => [
        'driver' => 'dms',
    ],
],

'dms' => [
    'driver' => 'dms',
    'disk'   => 'client',  // store on the client disk on the DMS server
],

'disks' => [
    // Uses DMS server default disk
    'dms' => [
        'driver' => 'dms',
        'url'    => env('DMS_URL'),
        'token'  => env('DMS_TOKEN'),
    ],

    // Targets the client disk on the DMS server
    'dms-client' => [
        'driver' => 'dms',
        'url'    => env('DMS_URL'),
        'token'  => env('DMS_TOKEN'),
        'disk'   => 'client',
    ],

    // Points to a completely different DMS service
    'dms-archive' => [
        'driver' => 'dms',
        'url'    => env('DMS_ARCHIVE_URL'),
        'token'  => env('DMS_ARCHIVE_TOKEN'),
    ],
],

// From a string
Storage::disk('dms')->put('invoices/001.pdf', $pdfContents);

// From an uploaded file in a controller
$request->file('document')->store('documents', 'dms');

// With a custom filename
$request->file('document')->storeAs('documents', 'invoice-001.pdf', 'dms');

// As public visibility
Storage::disk('dms')->put('avatars/user-1.jpg', $imageContents, 'public');

// Get file contents as string
$contents = Storage::disk('dms')->get('invoices/001.pdf');

// Stream download directly to browser
return Storage::disk('dms')->download('invoices/001.pdf');

// Stream with custom filename
return Storage::disk('dms')->download('invoices/001.pdf', 'my-invoice.pdf');

if (Storage::disk('dms')->exists('invoices/001.pdf')) {
    // file exists
}

if (Storage::disk('dms')->missing('invoices/001.pdf')) {
    // file does not exist
}

Storage::disk('dms')->delete('invoices/001.pdf');

// Move (rename)
Storage::disk('dms')->move('old/path.pdf', 'new/path.pdf');

// Copy
Storage::disk('dms')->copy('original.pdf', 'copy.pdf');

// Files in a directory
$files = Storage::disk('dms')->files('invoices');

// Files recursively
$files = Storage::disk('dms')->allFiles('invoices');

$size      = Storage::disk('dms')->size('invoices/001.pdf');
$mime      = Storage::disk('dms')->mimeType('invoices/001.pdf');
$timestamp = Storage::disk('dms')->lastModified('invoices/001.pdf');

// Public URL
$url = Storage::disk('dms')->url('avatars/user-1.jpg');

// Temporary signed URL
$url = Storage::disk('dms')->temporaryUrl('invoices/001.pdf', now()->addHour());

Storage::disk('dms')->setVisibility('avatars/user-1.jpg', 'public');
Storage::disk('dms')->setVisibility('invoices/001.pdf', 'private');

$visibility = Storage::disk('dms')->visibility('avatars/user-1.jpg');
// returns 'public' or 'private'

Arshad1114\DmsDisk\Consumer\DmsServiceProvider::class,

'providers' => [
    Arshad1114\DmsDisk\Consumer\DmsServiceProvider::class,
],
bash
cd consumer-service && php artisan tinker
bash
php artisan vendor:publish --tag=dms-disk-config
bash
php artisan package:discover
php artisan config:clear