Outdated Drivers Are Slowing You Down
One free scan finds every outdated or missing driver and matches the right update for your exact hardware.Free scan · exact hardware matchPC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11Flysystem is a PHP library that gives your application a common interface for working with local and remote file storage. Install it with Composer, configure an adapter for the backend you want, wrap that adapter in LeagueFlysystemFilesystem, then use the filesystem API. The abstraction reduces dependence on a provider-specific API, but it does not make every backend’s behavior identical.
What Flysystem abstracts—and what it does not
Flysystem is software for PHP, not a storage service or a physical device. Its adapters connect a shared filesystem API to storage systems such as a local directory, an SFTP server, or cloud object storage. Your application can use the same general operations—such as reading, writing, listing, and deleting—without calling each provider’s API directly. The PHP League describes Flysystem as a file storage library for PHP.
In the architecture, application code works against FilesystemOperator; a Filesystem instance delegates operations to a FilesystemAdapter. The common interface covers frequently needed behavior, not every feature of every backend. The project characterizes this as an “80-20 solution”: provider-specific capabilities and differences may still require separate code. See the architecture documentation.
Install and use Flysystem
For new applications, use the V3 documentation and packages. The getting-started guide uses Composer and demonstrates a local adapter wrapped in a filesystem object:
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
#1 Best Overall
- Read Before You Buy — No Video Output: These adapters support charging and USB 2.0 data transfer, but cannot transmit video signals. Except for standard USB webcams (which use USB data only), they are not compatible with HDMI/DisplayPort cables, video-capable USB-C hubs, or docking stations with video output.
- Convert USB-A Ports to USB-C: Designed to connect USB-C earphones, cables, flash drives, card readers, and other USB-C accessories to standard USB-A ports. Plug-and-play with no drivers or software required.
- Aluminum Alloy Housing: Built with a sturdy aluminum alloy shell that aids in heat dissipation and protects against daily wear and scratches. Designed to maintain a stable and secure connection.
- Compact & Travel-Friendly: The ultra-compact design allows the adapter to stay plugged into your device without blocking adjacent ports or adding bulk, reducing wear and tear on your original USB ports.
- 12-Month Warranty: Backed by a 12-month manufacturer warranty for peace of mind. Designed to meet strict quality control standards for reliable everyday performance.
composer require league/flysystem:^3.0
<?php
$adapter = new LeagueFlysystemLocalLocalFilesystemAdapter(__DIR__ . '/storage');
$filesystem = new LeagueFlysystemFilesystem($adapter);
$filesystem->write('Example.txt', 'Example contents');
The local adapter is included with the main package. Remote storage integrations generally require a separate adapter package and any dependencies that package specifies. The exact installation and configuration depend on the backend. The quick-start guide covers the basic setup.
Use Flysystem with AWS S3
To connect to S3, install the Flysystem S3 adapter, provide an S3 client and bucket configuration, then wrap the adapter in Filesystem. Follow the adapter’s current installation and configuration instructions for the package version in your project; its example also documents the IAM actions it needs. See the AWS S3 V3 adapter guide.
Rank #2
- 5-in-1 USB-C Hub: Experience comprehensive connectivity featuring a Power Delivery input, two USB-A 2.0 ports, a USB-A 3.0 port, and an HDMI port. (Note: The USB-C power delivery input port is only for connecting an external wall charger to power your laptop and cannot power peripheral devices.)
- 90W Pass-Through Charging: Achieve optimal charging with 90W pass-through power to your laptop, supported by a total input of 100W, with the hub reserving 10W for operational efficiency. (Note: Wall charger not included.)
- Quick Data Transfers: Accelerate your productivity with rapid data transfers using a high-speed 5Gbps USB 3.0 port and two 480Mbps USB 2.0 ports.
- 4K HDMI Display: Enhance your visual experience with a hub capable of delivering 4K resolution at 30Hz in both mirror and extend modes. Please note that this hub is compatible with MacBook (macOS 12 and newer), Windows 10 and 11, ChromeOS, and laptops equipped with DP Alt Mode and Power Delivery. Note: This device is not compatible with Linux.
- What You Get: Anker USB-C Hub (5-in-1, 4K HDMI), welcome guide, 18-month warranty, and our friendly customer service.
A bucket is not a local directory tree. S3 does not require directories in the same way a local filesystem does, so an operation that creates a directory may not create a corresponding directory object. The shared API helps keep ordinary file operations consistent, but code that relies on directory semantics, permissions, or other provider-specific features should account for the adapter’s behavior.
Which adapters does Flysystem support?
The official project overview lists the following as officially supported adapters. Adapter availability, package instructions, and dependencies can change, so check the project’s current list and the individual adapter guide before choosing one. The overview also distinguishes third-party integrations.
Rank #3
- Sleek 7-in-1 USB-C Hub: Features an HDMI port, two USB-A 3.0 ports, and a USB-C data port, each providing 5Gbps transfer speeds. It also includes a USB-C PD input port for charging up to 100W and dual SD and TF card slots, all in a compact design.
- Flawless 4K@60Hz Video with HDMI: Delivers exceptional clarity and smoothness with its 4K@60Hz HDMI port, making it ideal for high-definition presentations and entertainment. (Note: Only the HDMI port supports video projection; the USB-C port is for data transfer only.)
- Double Up on Efficiency: The two USB-A 3.0 ports and a USB-C port support a fast 5Gbps data rate, significantly boosting your transfer speeds and improving productivity.
- Fast and Reliable 85W Charging: Offers high-capacity, speedy charging for laptops up to 85W, so you spend less time tethered to an outlet and more time being productive.
- What You Get: Anker USB-C Hub (7-in-1), welcome guide, 18-month warranty, and our friendly customer service.
| Backend or adapter | Typical storage context |
|---|---|
| Local | A directory on the machine running the PHP application |
| FTP | A remote file-transfer server |
| SFTP | A remote file-transfer server accessed through SFTP; the V3 adapter guide describes use of phpseclib version 3 |
| Memory | In-memory storage |
| AWS S3 | Amazon S3 object storage |
| AsyncAws S3 | S3-compatible integration using AsyncAws |
| Google Cloud Storage | Google Cloud object storage |
| Azure Blob Storage | Azure Blob object storage |
| MongoDB GridFS | File storage through MongoDB GridFS |
| WebDAV | A remote storage server using WebDAV |
The project lists Google Drive and Dropbox among third-party adapters rather than the official adapters above. That distinction matters: third-party packages have their own maintainers, installation requirements, and support status.
Common operations and practical limits
The filesystem API includes writing and reading strings or streams, deleting files, listing contents, checking whether a path exists, retrieving metadata, creating directories, changing visibility, and moving or copying files. Consult the API documentation for method signatures and return behavior for your installed V3 version. See the filesystem API reference.
Rank #4
- Dual Converters, Infinite Potential:Includes 2× USB C male to USB A female adapters and 2× USB A male to USB C female adapters. Perfect for a wide range of uses—tablets with Bluetooth keyboards, expand USB ports on macbook, and more. Two different converters for all your daily needs
- Next-Level 10Gbps & 3A Charging: No more slow 480Mbps, this usb to usb c adapter has a transfer speed of up to 10Gbps, allowing you to do more transferring in less time. This usb adapter fits both USB A and USB C charger, supporting up to 3A fast charging
- Upgraded Exquisite Craftsmanship: With an aluminum alloy housing and metal connector, the usbc to usb adapter is extremely durable and sturdy. Rigorously tested to withstand more than 10,000 times of plugging and unplugging, ensuring long-lasting performance
- Broad Compatible: The usb c to usb adapter widely supports all USB C/ USB A devices like laptops, tablets, cellphones, car chargers, and phone chargers. Such as compatible with MacBook Pro/Air 2023/2022, Thunderbolt 4/3 Devices,Apple MagSafe Watch 9/8/7/SE/Ultra, iPad Pro 2022/2021, Samsung Galaxy S23/S20/S10, and iPhone 17/16/15 Pro. Plug and play
- Please Note: To reach 10Gbps speed, keep the cable under 3.3 ft. For USB A Male to USB C adapters, try flipping the USB C connector. USB C Male to USB A adapters support bidirectional 10Gbps transfer within 3.3 ft
Use streams for large files
When handling a large file, stream reads and writes instead of loading the whole file into a PHP string. The stream-oriented API can keep memory use low compared with reading all contents at once. Your code still needs to manage the stream resource appropriately. The API reference documents stream operations.
Account for overwrite and directory behavior
Flysystem documents move and copy as deterministic operations that overwrite the destination. If overwriting would be unsafe, check the destination or otherwise enforce your application’s policy before calling the operation. Directory creation is performed when needed on backends that require it; object storage such as S3 may not need a directory-creation operation.
Best Value
- 5-in-1 Connectivity: Equipped with a 4K HDMI port, a 5 Gbps USB-C data port, two 5 Gbps USB-A ports, and a USB C 100W PD-IN port. Note: The USB C 100W PD-IN port supports only charging and does not support data transfer devices such as headphones or speakers.
- Powerful Pass-Through Charging: Supports up to 85W pass-through charging so you can power up your laptop while you use the hub. Note: Pass-through charging requires a charger (not included). Note: To achieve full power for iPad, we recommend using a 45W wall charger.
- Transfer Files in Seconds: Move files to and from your laptop at speeds of up to 5 Gbps via the USB-C and USB-A data ports. Note: The USB C 5Gbps Data port does not support video output.
- HD Display: Connect to the HDMI port to stream or mirror content to an external monitor in resolutions of up to 4K@30Hz. Note: The USB-C ports do not support video output.
- What You Get: Anker 332 USB-C Hub (5-in-1), welcome guide, our worry-free 18-month warranty, and friendly customer service.
Do not generalize local symlink rules to remote storage
The local adapter has specific symbolic-link behavior: by default, a listing that encounters a symlink throws, and configuration can instead skip symlinks. Reads follow PHP’s symlink behavior. Those details are local-adapter behavior, not a universal rule for all adapters. See the local adapter documentation.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Build a custom adapter
If no available adapter fits your storage system, implement FilesystemAdapter to map Flysystem operations to that system. Treat this as an integration boundary: your adapter must translate shared operations into the backend’s real semantics, including unsupported operations, errors, paths, and metadata.
- Review the adapter interface and the project’s adapter-development guide.
- Implement the required operations using the storage system’s own API and document any behavior that cannot match the common interface.
- Run the adapter test utilities, then add integration tests against the actual filesystem. The project recommends real-filesystem integration tests as the strongest practical guarantee that an adapter behaves correctly.
Read the custom adapter guide.
Check the V2-to-V3 boundary
New examples should use V3 documentation; older V1 material may describe outdated methods or behavior. The V2/V3 migration guide says V3 is compatible with V2 from a consumption point of view, but custom adapter implementations face a breaking change. It also describes replacing separate update/put methods with write operations, removing plugins, and allowing visibility conversion and path normalization to be customized or replaced. Check the migration guide before upgrading an application that implements its own adapter. See the V2-to-V3 upgrade guide.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

