Download the PHP package tigusigalpa/yandex-disk-php without Composer
On this page you can find all versions of the php package tigusigalpa/yandex-disk-php. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download tigusigalpa/yandex-disk-php
More information about tigusigalpa/yandex-disk-php
Files in tigusigalpa/yandex-disk-php
Package yandex-disk-php
Short Description PHP SDK for Yandex Disk API integration
License MIT
Homepage https://github.com/tigusigalpa/yandex-disk-php
Informations about the package yandex-disk-php
Yandex Disk PHP SDK
🌐 Язык: Русский | English
Комплексный PHP SDK для интеграции с Yandex Disk API. Эта библиотека предоставляет чистый, интуитивный интерфейс для управления файлами и папками на Яндекс Диске с полным покрытием официального API.
📋 Справочник API
| Метод | Эндпоинт | Документация | Описание |
|---|---|---|---|
getAuthorizationUrl() |
- | OAuth Guide | Генерация URL авторизации OAuth |
getCapacity() |
GET / |
Disk Info | Получение информации о диске |
getMeta() |
GET /resources |
Metadata | Получение метаданных ресурса |
addMeta() |
PATCH /resources |
Add Metadata | Добавление пользовательских метаданных |
getAllFiles() |
GET /resources/files |
All Files | Получение плоского списка всех файлов |
getRecentUploads() |
GET /resources/last-uploaded |
Recent Uploads | Получение недавно загруженных файлов |
getRecentPublished() |
GET /resources/public |
Published Files | Получение недавно опубликованных файлов |
createFolder() |
PUT /resources |
Create Folder | Создание папки |
uploadFile() |
GET /resources/upload |
Upload File | Загрузка файла |
uploadFromUrl() |
POST /resources/upload |
Upload from URL | Загрузка файла из интернета |
downloadFile() |
GET /resources/download |
Download File | Скачивание файла |
copy() |
POST /resources/copy |
Copy Resource | Копирование файла/папки |
move() |
POST /resources/move |
Move Resource | Перемещение файла/папки |
delete() |
DELETE /resources |
Delete Resource | Удаление файла/папки |
publish() |
PUT /resources/publish |
Publish Resource | Публикация ресурса |
unpublish() |
PUT /resources/unpublish |
Unpublish Resource | Отмена публикации ресурса |
getAvailablePublicSettings() |
GET /public/resources/public-settings/available |
Available Settings | Получение доступных публичных настроек |
getPublicSettings() |
GET /public/resources/public-settings |
Public Settings | Получение публичных настроек ресурса |
changePublicSettings() |
PUT /resources/public |
Change Settings | Изменение публичных настроек |
getPublicResourceMeta() |
GET /public/resources |
Public Metadata | Получение метаданных публичного ресурса |
downloadPublicResource() |
GET /public/resources/download |
Download Public | Скачивание публичного ресурса |
savePublicResource() |
POST /public/resources/save |
Save Public Resource | Сохранение публичного ресурса |
getTrash() |
GET /trash/resources |
Trash List | Получение содержимого корзины |
restoreFromTrash() |
PUT /trash/resources/restore |
Restore from Trash | Восстановление из корзины |
clearTrash() |
DELETE /trash/resources |
Clear Trash | Очистка корзины |
getOperationStatus() |
GET /operations/{id} |
Operation Status | Получение статуса операции |
getPublicResourcesOwnedByUser() |
GET /public/resources/admin/public-resources |
Owned Resources | Администратор: публичные ресурсы пользователя |
getPublicResourcesAccessedByUser() |
GET /public/resources/admin/accessible-resources |
Accessible Resources | Администратор: доступные пользователю ресурсы |
unpublishUserResource() |
PUT /public/resources/admin/unpublish |
Admin Unpublish | Администратор: отмена публикации ресурса |
🔐 Получение OAuth-токена
Для работы с Yandex Disk API необходимо получить OAuth-токен. Следуйте этим шагам:
1. Создание приложения на Яндекс OAuth
- Зайдите под своей учётной записью на Яндекс OAuth: https://oauth.yandex.ru/
- Нажмите на кнопку "+ Создать"
- Во всплывающем окне "Какое приложение хотите создать?" укажите "Для доступа к API или отладки" и нажмите "Перейти к созданию"
- Заполните форму:
- Название сервиса: Укажите название вашего приложения
- Почта для связи: Ваш контактный email
- Доступ к данным: Выберите необходимые права:
cloud_api:disk.write— Запись в любом месте на Дискеcloud_api:disk.read— Чтение всего Дискаcloud_api:disk.app_folder— Доступ к папке приложения на Дискеcloud_api:disk.info— Доступ к информации о Диске
После создания приложения вам будут показаны:
- ClientID — понадобится для получения OAuth-токена
- Client secret — для работы с Яндекс Диском он не понадобится
2. Формирование ссылки авторизации
Используйте функцию getAuthorizationUrl() для генерации ссылки авторизации:
Или сформируйте ссылку вручную:
3. Получение токена
- Перейдите по сгенерированной ссылке
- Авторизуйтесь в своём аккаунте Яндекса (если еще не авторизованы)
- Разрешите доступ для вашего приложения
- После подтверждения вы будете перенаправлены на страницу с токеном в URL
- Скопируйте токен на странице, что-то вроде
y0__xCD2tUFGKDjOyD2-Myl...
4. Использование токена
Полученный токен используйте при создании клиента:
Примеры использования
Информация о диске
Работа с ресурсами
Операции с файлами
Загрузка файла
Скачивание файла
Копирование файла
Перемещение файла
Удаление файла
Операции с папками
Список файлов и папок
Управление метаданными
Управление публичным доступом
Публикация ресурса
Получение опубликованных файлов
Отмена публикации ресурса
Управление публичными настройками
Работа с публичными ресурсами
Управление корзиной
Загрузка из URL
Методы администратора организации
🚀 Интеграция с Laravel
Установка
Конфигурация
Опубликуйте конфигурационный файл:
Добавьте в ваш файл .env:
Использование
🔧 Обработка ошибок
SDK предоставляет комплексную обработку ошибок с пользовательскими исключениями:
📊 Покрытие API
| Категория | Реализовано | Всего | Процент |
|---|---|---|---|
| Информация о диске | ✅ 1 | 1 | 100% |
| Операции с файлами | ✅ 8 | 8 | 100% |
| Публичные ресурсы | ✅ 8 | 8 | 100% |
| Управление корзиной | ✅ 3 | 3 | 100% |
| Метаданные | ✅ 2 | 2 | 100% |
| Методы администратора | ✅ 3 | 3 | 100% |
| Операции | ✅ 1 | 1 | 100% |
| Всего | ✅ 26 | 26 | 100% |
🤝 Участие в разработке
Вклады приветствуются! Не стесняйтесь отправлять Pull Request.
📄 Лицензия
Этот пакет лицензирован под MIT License. Подробности смотрите в файле LICENSE.
🔗 Ссылки
📞 Поддержка
Для проблем, вопросов или вкладов:
- Создайте issue на GitHub
- Проверьте официальную документацию
- Ознакомьтесь с руководством по устранению неполадок
Сделано с ❤️ для PHP сообщества