meema/meema-client-php
Composer 安装命令:
composer require meema/meema-client-php
包简介
⚡️ A fully-featured & blazing-fast PHP API client to interact with Meema. 🐑
README 文档
README
The most simple way to integrate Meema and your PHP project
Documentation • Laravel • Report a bug • FAQ • Discord
🐙 Features
- Most simple way to implement a fully-functional media management system
- Thin & minimal package to interact with Meema's API
- Supports PHP
^7.*
💡 Usage
First, install Meema PHP API Client via the composer package manager:
composer require meema/meema-client-php
Then, initialize the Client
use Meema\MeemaClient\Client $client = new Client($meemaApiKey);
Using the Media model
$client->media()->create('New media name'); $client->media()->get(); // specific uuids $client->media()->get('11a283ed-a64e-424a-aefc-6aa98971d529', '1556fcb8-693e-4431-8b16-3b2b7bb8fcc7'); $client->media()->search('media-name'); // this will return a Response instance $media = $client->media()->find('11a283ed-a64e-424a-aefc-6aa98971d529'); // you may chain other methods that require an id $media->update('updated-media-name') $media->delete(); $media->archive(); $media->unarchive(); $media->makePrivate(); $media->makePublic(); $media->duplicate(); // Relationships with other models. // Continuing with the chaining of methods we used earlier. $media->folders()->get(); $media->folders()->create('New folder name'); $media->folders()->delete('11a283ed-a64e-424a-aefc-6aa98971d529'); $media->tags()->get(); $media->tags()->associate(['name' => 'Tag Name']); $media->tags()->disassociate(['name' => 'Tag Name']);
Using the Folder model
$client->folders()->create('New folder name'); $client->folders()->get(); // specific uuids $client->folders()->get('11a283ed-a64e-424a-aefc-6aa98971d529', '1556fcb8-693e-4431-8b16-3b2b7bb8fcc7'); $client->folders()->search('folder-name'); // this will return a Response instance $folder = $client->folders()->find('11a283ed-a64e-424a-aefc-6aa98971d529'); // you may chain other methods that require an id $folder->update('updated-folder-name') $folder->delete(); $folder->archive(); $folder->unarchive(); $folder->duplicate(); // Relationships with other models. // Continuing with the chaining of methods we used earlier. $folder->media()->get(); $folder->tags()->get(); $folder->tags()->associate(['tag_id' => 7]); $folder->tags()->disassociate(['tag_id' => 7]);
Using the Tag model
$client->tags()->get(); // Specific ids $client->tags()->get(1, 2, 3); // This will return a Response instance $tag = $client->tags()->find(1); // you may chain other methods that require an id $tag->update('red-500'); // You will have to use tailwind CSS color palletes. $tag->delete(); $tag->media()->get();
Using the Favorite model
$client->favorites()->create(['name' => 'New Favorite Name', 'icon' => 'favorite-icon']); $client->favorites()->get(); // specific ids $client->favorites()->get(1,2,3); // this will return a Response instance $favorite = $client->favorites()->find(1); // you may chain other methods that require an id $favorite->update(['name' => 'Updated Favorite Name', 'icon' => 'updated-favorite-icon']); $favorite->delete();
Using the Storage model
$client->storage()->upload('path/to/local/media/file'); $client->storage()->getMetadata('meema/path/to/file.jpg'); $client->storage()->setVisibility('meema/path/to/file.jpg', 'private'); // Or 'public' $client->storage()->has('meema/path/to/file.jpg'); $client->storage()->delete('meema/path/to/file.jpg'); $client->storage()->copy('meema/path/to/file.jpg', 'meema/path/to/copied-file.jpg'); $client->storage()->rename('meema/path/to/file.jpg', 'meema/path/to/renamed-file.jpg'); $client->storage()->listContents('meema/path'); $client->storage()->makeDirectory('meema/path/new-folder');
In order to use any of our "On-The-Fly" image & video operations, read more here
For the full documentation, visit the Meema PHP API Client.
🧪 Testing
composer test
📈 Changelog
Please see our releases page for more information on what has changed recently.
💪🏼 Contributing
Please see CONTRIBUTING for details.
🏝 Community
For help, discussion about best practices, or any other conversation that would benefit from being searchable:
For casual chit-chat with others using this package:
🚨 Security
Please review our security policy on how to report security vulnerabilities.
🙏🏼 Credits
📄 License
The MIT License (MIT). Please see LICENSE for more information.
Made with ❤️ by Meema, Inc.
meema/meema-client-php 适用场景与选型建议
meema/meema-client-php 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 440 次下载、GitHub Stars 达 5, 最近一次更新时间为 2021 年 04 月 13 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「api」 「Media management」 「Meema」 「video conversions」 「meema-client」 「image editing」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 meema/meema-client-php 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 meema/meema-client-php 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 meema/meema-client-php 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
Simple Sharing generates social media share links within CP entry pages, allowing you to quickly & easily share entries.
A PSR-7 compatible library for making CRUD API endpoints
Laravel Media Popup to upload/view the files
A Silverstripe module to allow you to log into any of your Silverstripe sites from one place.
Task system for APPUI
Asset Manager Laravel package for Gigcodes UI Library
统计信息
- 总下载量: 440
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 5
- 点击次数: 8
- 依赖项目数: 2
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2021-04-13