someline/someline-image
Composer 安装命令:
composer require someline/someline-image
包简介
Someline Image is a helper service to handle uploaded images and store images without duplicates.
README 文档
README
Someline Image is a helper service to handle uploaded images and store images without duplicates.
Build for Laravel and Someline Starter.
Install
Via Composer
Install composer package to your laravel project
composer require someline/someline-image
Add Service Provider to config/app.php
'providers' => [ ... Someline\Image\SomelineImageServiceProvider::class, ... ],
Publishing config file.
php artisan vendor:publish
After published, config file for Rest Client is config/someline-image.php, you will need to config it to use Rest Client.
Usage
Routes
Route::get('/image/{name}', 'ImageController@showOriginalImage'); Route::post('/image', 'ImageController@postImage');
Many Imageables
Use on the Model:
use SomelineHasImageablesTrait;
Usage:
/** @var SomelineImage $somelineImage */ $somelineImage = SomelineImage::find(1); /** @var User $user */ $user = User::find(1); // save image relations smartly with sequence support (recommended) $user->syncImages([1, 2], ['type' => 'cover', 'data' => json_encode('a')]); // save image relations via save $user->images()->save($somelineImage, ['type' => 'cover', 'data' => json_encode('a')]); // save image relations via attach $user->images()->attach(1, ['type' => 'cover', 'data' => json_encode('a')]); // update image relations via sync $user->images()->sync([1]); // set as main image $user->setAsMainImage($somelineImage); // set as type main image $user->setAsTypeMainImage('cover', $somelineImage); // get all images print_r($user->getImages()->toArray()); // get first main image print_r($user->getMainImage()->toArray()); // get all main images print_r($user->getMainImages()->toArray()); // get all type images print_r($user->getTypeImages('cover')->toArray()); // get all type images and are main images print_r($user->getTypeMainImages('cover')->toArray());
Sample Controller File
app/Http/Controllers/ImageController.php
<?php namespace App\Http\Controllers; use Exception; use Illuminate\Http\Request; use Someline\Image\Controllers\SomelineImageController; use Someline\Models\Image\SomelineImage; use Someline\Image\SomelineImageService; class ImageController extends Controller { public function postImage(Request $request) { $somelineImageService = new SomelineImageService(); $file = $request->file('image'); $somelineImage = null; try { /** @var SomelineImage $somelineImage */ $somelineImage = $somelineImageService->handleUploadedFile($file); } catch (Exception $e) { return 'Failed to save: ' . $e->getMessage(); } if (!$somelineImage) { return 'Failed to save uploaded image.'; } $somelineImageId = $somelineImage->getSomelineImageId(); return 'Saved: ' . $somelineImage->getImageUrl(); } public function showOriginalImage($image_name) { return SomelineImageController::showImage('original', $image_name); } }
Testing
phpunit
Contributing
Please see CONTRIBUTING for details.
Credits
License
The MIT License (MIT). Please see License File for more information.
someline/someline-image 适用场景与选型建议
someline/someline-image 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 5.26k 次下载、GitHub Stars 达 4, 最近一次更新时间为 2016 年 09 月 27 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「image」 「service」 「laravel」 「someline-starter」 「starter-framework」 「someline-image」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 someline/someline-image 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 someline/someline-image 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 someline/someline-image 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
Yii2 LightBox image galary widget uses Lightbox v2.10.0 by Lokesh Dhakar
The Yii2 extension uses jQuery jquery.carousel-1.1.min.js and makes image carousel from php array of structure defined.
A fast and intuitive dependency injection container.
Registry service.
The Yii2 extension uses jQuery PrettyPhoto and OwlCarousel js and makes image galary from php array of structure defined.
swagger-php - Generate interactive documentation for your RESTful API using phpdoc annotations
统计信息
- 总下载量: 5.26k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 4
- 点击次数: 0
- 依赖项目数: 3
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2016-09-27