PHPackages                             evanskim/image-exchanger - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Parsing &amp; Serialization](/categories/parsing)
4. /
5. evanskim/image-exchanger

ActiveProject[Parsing &amp; Serialization](/categories/parsing)

evanskim/image-exchanger
========================

Extract from html in data field

0.0.2(6y ago)06MITPHPPHP &gt;=5.6

Since Sep 27Pushed 6y ago1 watchersCompare

[ Source](https://github.com/evans-kim/image-exchanger)[ Packagist](https://packagist.org/packages/evanskim/image-exchanger)[ RSS](/packages/evanskim-image-exchanger/feed)WikiDiscussions master Synced today

READMEChangelogDependencies (2)Versions (3)Used By (0)

image-exchanger
===============

[](#image-exchanger)

Extract Images from HTML code in database data field and Exchange image url from old to new

Benefit
-------

[](#benefit)

이 패키지는 추출한 이미지를 엑셀파일로 덤프합니다. 덤프한 엑셀 파일을 조작하여 커스터마이즈할 수 있습니다. 중간에 작업이 실패해도 엑셀파일을 수정하여 재수행할 수 있습니다.

How to install
--------------

[](#how-to-install)

```
composer require evanskim/image-exchanger

```

How to use
----------

[](#how-to-use)

라라벨 5.4 이하 버전에서는 서비스프로바이더를 등록하세요. 5.5 이상은 자동 등록됩니다.

```
# config/app.php
'providers' => [
    ...
    /*
    * Package Service Providers...
    */
    EvansKim\ImageExchanger\ImageExchangerServiceProvider::class,
    ...
]

```

### 설정파일 퍼블리싱 하고 설정을 변경하세요.

[](#설정파일-퍼블리싱-하고-설정을-변경하세요)

```
php artisan vendor:publish --tag=public

# config/image-exchanger.php
return [
    'table' => 'g4_write_notice', #사용할 테이블명
    'primary_id' => 'wr_id', #테이블의 프라이머리 필드명
    'field' => 'wr_content', # HTML이 담긴 필드명
    'storage' => 'public' # 파일을 저장할 스토리지명
];

```

### 실행

[](#실행)

```
php artisan image-exchanger:run

```

How to process
--------------

[](#how-to-process)

1. 데이터를 가져옵니다.
2. 이미지를 추출하여 엑셀파일(extracts.xls)로 덤프 합니다.
3. extracts.xls 을 기준으로 이미지 파일을 가져와 스토리지에 저장합니다.
4. 성공한 내역(success.xls)과 실패한 내역(fail.xls)을 엑셀파일로 각각 덤프합니다.
5. success.xls 파일로 데이터의 이미지 url을 변경하고 저장합니다.

###  Health Score

20

—

LowBetter than 14% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity4

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity44

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~0 days

Total

2

Last Release

2419d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/29147681?v=4)[evanskim](/maintainers/evanskim)[@Evanskim](https://github.com/Evanskim)

---

Top Contributors

[![evans-kim](https://avatars.githubusercontent.com/u/25667826?v=4)](https://github.com/evans-kim "evans-kim (3 commits)")

### Embed Badge

![Health badge](/badges/evanskim-image-exchanger/health.svg)

```
[![Health](https://phpackages.com/badges/evanskim-image-exchanger/health.svg)](https://phpackages.com/packages/evanskim-image-exchanger)
```

###  Alternatives

[stillat/blade-parser

1451.2M12](/packages/stillat-blade-parser)[vtalbot/markdown

Markdown compiler for Laravel 5

100204.2k3](/packages/vtalbot-markdown)[olssonm/ampersand

Plug and play flat file markdown blog for your Laravel-projects

273.2k](/packages/olssonm-ampersand)[ronasit/laravel-helpers

Provided helpers function and some helper class.

1475.7k13](/packages/ronasit-laravel-helpers)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
