質問編集履歴

1

試した内容を追記

2018/09/07 04:43

投稿

pluto22
pluto22

スコア9

test CHANGED
File without changes
test CHANGED
@@ -40,6 +40,14 @@
40
40
 
41
41
 
42
42
 
43
+ ※追記※
44
+
45
+ phpのスクリプト内で、mecab_split()を利用した分割はできておりますが、
46
+
47
+ 辞書を指定した状態での分割ができない状況です。
48
+
49
+
50
+
43
51
  ### 該当のソースコード
44
52
 
45
53
 
@@ -61,3 +69,57 @@
61
69
  PHP 5.4.16
62
70
 
63
71
  mecab 0.996
72
+
73
+ php-mecab利用
74
+
75
+
76
+
77
+ ### 追記
78
+
79
+ 回答頂いた方法を使ったのですが、呼び出す事ができませんでした。
80
+
81
+ 他に試した方法を追記いたします。
82
+
83
+ そもそもやり方が違うなどありましたら、アドバイス頂ければと思います。
84
+
85
+ ```php
86
+
87
+ //回答頂いた方法:どちらも呼び出し失敗
88
+
89
+ $mecab = mecab_new(['-d', '/xxx/mecab/henkan_dictionary']);
90
+
91
+ $mecab = MeCab_Tagger(['-d', '/xxx/mecab/henkan_dictionary']);
92
+
93
+ ```
94
+
95
+ MeCab_Taggerで調べて出た下記のページを参考
96
+
97
+ [https://qiita.com/yudaifuijta0121/items/1787d70b9cfca3e43d12](https://qiita.com/yudaifuijta0121/items/1787d70b9cfca3e43d12)
98
+
99
+ ```php
100
+
101
+ //$options無しだと動くが、$optionsを入れると画面が真っ白になり失敗
102
+
103
+ $options = array('-d', '/xxx/mecab/henkan_dictionary');
104
+
105
+
106
+
107
+ $searchwords = "検索文字列";
108
+
109
+ $searchwords_ary = array();
110
+
111
+
112
+
113
+ $mecab = new MeCab_Tagger($options);
114
+
115
+ $nodes = $mecab->parseToNode($searchwords);
116
+
117
+ foreach ($nodes as $node) {
118
+
119
+ array_push($searchwords_ary, $node->getSurface());
120
+
121
+ }
122
+
123
+
124
+
125
+ ```