PHPackages                             ukkz/php-mecab-wrapper - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. ukkz/php-mecab-wrapper

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

ukkz/php-mecab-wrapper
======================

A wrapper class for mecab.

1.1(7y ago)03.2kMITPHPPHP &gt;=7.0

Since Oct 24Pushed 7y ago1 watchersCompare

[ Source](https://github.com/ukkz/php-mecab-wrapper)[ Packagist](https://packagist.org/packages/ukkz/php-mecab-wrapper)[ RSS](/packages/ukkz-php-mecab-wrapper/feed)WikiDiscussions master Synced 1w ago

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

PHP MeCab wrapper library
=========================

[](#php-mecab-wrapper-library)

[MeCab](http://taku910.github.io/mecab/) wrapper library for PHP.

[![Build Status](https://camo.githubusercontent.com/fa34f4cd8ed0163dfca4590be05a9f19b764d3009f21d91c21c71cdb8b988835/68747470733a2f2f7472617669732d63692e636f6d2f756b6b7a2f7068702d6d656361622d777261707065722e7376673f6272616e63683d6d6173746572)](https://travis-ci.com/ukkz/php-mecab-wrapper)

Install
-------

[](#install)

`composer require ukkz/php-mecab-wrapper`

- 内部的には単純にmecabコマンドをexecしているだけなので、公式を参照してMeCabをインストールし、cliからMeCabが問題なく実行可能である環境を予め準備しておいてください。

```
$ echo "カツサンドはパンが両側からカロリーを押しつぶすから0カロリーである" | mecab
カツサンド      名詞,固有名詞,一般,*,*,*,カツサンド,カツサンド,カツサンド
は      助詞,係助詞,*,*,*,*,は,ハ,ワ
パン    名詞,一般,*,*,*,*,パン,パン,パン
が      助詞,格助詞,一般,*,*,*,が,ガ,ガ
両側    名詞,一般,*,*,*,*,両側,リョウガワ,リョーガワ
から    助詞,格助詞,一般,*,*,*,から,カラ,カラ
カロリー        名詞,一般,*,*,*,*,カロリー,カロリー,カロリー
を      助詞,格助詞,一般,*,*,*,を,ヲ,ヲ
押しつぶす      動詞,自立,*,*,五段・サ行,基本形,押しつぶす,オシツブス,オシツブス
から    助詞,接続助詞,*,*,*,*,から,カラ,カラ
0       名詞,数,*,*,*,*,*
カロリー        名詞,接尾,助数詞,*,*,*,カロリー,カロリー,カロリー
で      助動詞,*,*,*,特殊・ダ,連用形,だ,デ,デ
ある    助動詞,*,*,*,五段・ラ行アル,基本形,ある,アル,アル
EOS

```

- 辞書として[NEologd](https://github.com/neologd/mecab-ipadic-neologd)の使用を推奨します。（ただしテストは標準のipadic-0.996を使用）

Usage
-----

[](#usage)

### classes

[](#classes)

#### MeCab\\Sentence

[](#mecabsentence)

```
$mecab_sentence_class = new MeCab\Sentence("解析したい日本語文章", 辞書ディレクトリのパス);
$mecab_word_class_generator = $mecab_sentence_class->getWord();

foreach ($mecab_word_class_generator as $mecab_word_class) {
    // 形態素ごとの処理など
    echo $mecab_word_class . '/';
}
// 出力は "解析/し/たい/日本語/文章/" となります。

```

`getWord()`メソッドでMeCab\\Wordクラスのジェネレータを返します。
扱いにくい場合は`getAllWords()`でMeCab\\Wordクラスの配列を得ることができます。
constructの第2引数は使いたい辞書があれば指定してください（省略可能）。

#### MeCab\\Word

[](#mecabword)

`classes()`メソッド以外はすべて文字列:

```
$mecab_word_class->class();         // 品詞: 動詞・名詞など
$mecab_word_class->classes();       // 品詞の下位分類（配列）
$mecab_word_class->type();          // 活用型: サ行変格・ラ行五段など
$mecab_word_class->form();          // 活用形: 連用形・基本形など
$mecab_word_class->base();          // 原形
$mecab_word_class->kana();          // 読み仮名（カナ）
$mecab_word_class->pronunciation(); // 発音（カナ）

```

`class()`メソッドで品詞を返します。
`classes()`メソッドで得られる配列は少なくとも1要素が含まれ、先頭の要素は`class()`の値と同じです。品詞の下位分類がある場合は最大4要素となります。
記号など一部情報が存在しない（活用形がないなどの）メソッドは空文字列を返します。

wordクラスをechoした場合、表層形（もとの文章中で出現したままの形）の文字列が表示されます。

### sample.php

[](#samplephp)

```
use MeCab\Sentence as MeCabSentence;

require_once('vendor/autoload.php');

// 入力文章
$original_text = '名を聞いて人を知らぬと云うことが随分ある。人ばかりではない。すべての物にある。';
$sample_sentence = new MeCabSentence($original_text);

// すべてカタカナにする
echo $sample_sentence->toKana() . "\n";
# "ナヲキイテヒトヲシラヌトイウコトガズイブンアル。ヒトバカリデハナイ。スベテノモノニアル。"

// 名詞だけ括弧でくくる
foreach ($sample_sentence->getWord() as $sample_word) {
    if ($sample_word->class() === '名詞') {
        echo '「' . $sample_word . '」';
    } else {
        echo $sample_word;
    }
}
# 「名」を聞いて「人」を知らぬと云う「こと」が随分ある。「人」ばかりではない。「すべて」の「物」にある。

```

Requirements
------------

[](#requirements)

- [MeCab](http://taku910.github.io/mecab/)
- PHP: &gt;= 7.0

Releases
--------

[](#releases)

DateVersionDescriptionOct 19, 181.1辞書を指定できるようになった / add option for the dictionariesOct 25, 181.0First releaseToDo
----

[](#todo)

- 文字コードをはっきりさせたい

License
-------

[](#license)

MIT License:
See LICENSE.txt .

###  Health Score

29

—

LowBetter than 59% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity19

Limited adoption so far

Community4

Small or concentrated contributor base

Maturity58

Maturing project, gaining track record

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 ~4 days

Total

2

Last Release

2759d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/19649d7236f0b0250a2aa050d31a7fb1fcfe0bfa1a8d06d7e41e668d369e6e1f?d=identicon)[ukkz](/maintainers/ukkz)

---

Tags

languagewrapperjapanesemecab

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/ukkz-php-mecab-wrapper/health.svg)

```
[![Health](https://phpackages.com/badges/ukkz-php-mecab-wrapper/health.svg)](https://phpackages.com/packages/ukkz-php-mecab-wrapper)
```

###  Alternatives

[phpoption/phpoption

Option Type for PHP

2.7k541.2M159](/packages/phpoption-phpoption)[simplesoftwareio/simple-qrcode

Simple QrCode is a QR code generator made for Laravel.

2.9k27.6M92](/packages/simplesoftwareio-simple-qrcode)[patrickschur/language-detection

A language detection library for PHP. Detects the language from a given text string.

8513.2M18](/packages/patrickschur-language-detection)[artisaninweb/laravel-soap

A SoapClient wrapper integration for Laravel

6314.5M12](/packages/artisaninweb-laravel-soap)[wapmorgan/morphos

A morphological solution for Russian and English language written completely in PHP. Provides classes to inflect personal names, geographical names, decline and pluralize nouns, generate cardinal and ordinal numerals, spell out money amounts and time.

8351.3M7](/packages/wapmorgan-morphos)[coderello/laravel-nova-lang

Language support for Laravel Nova.

4251.2M2](/packages/coderello-laravel-nova-lang)

PHPackages © 2026

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