[PHP-users 31173] Re: grepでの文字検索とstrposでの文字検索の違い

Takamori Mitsuki hashibata @ gmail.com
2006年 12月 31日 (日) 13:54:38 JST


高森です。
mb_regex_encodingもダメでした。

試しにstrposの値を表示させてみたところ、このような結果になりました。

% /usr/local/bin/php greptest.php
GREP(1):0.0116729736328

int(21) 1行目
int(8)  2行目
strpos(2):0.000230073928833
string(25) "是非遊びにきてください♪"
string(21) "全く関係ありません。"

mb_strpos(1):6.5803527832E-05

やはりマルチバイトを処理できていないご様子。

phpinfo()の値は下記のとおりです。
mb_detect_orderと今回の問題には関係がありますか?

mbstring
Multibyte Support 	enabled
Multibyte string engine 	libmbfl
Multibyte (japanese) regex support 	enabled
Multibyte regex (oniguruma) version 	4.4.4
Multibyte regex (oniguruma) backtrack check 	On

mbstring extension makes use of "streamable kanji code filter and
converter", which is distributed under the GNU Lesser General Public
License version 2.1.

Directive	Local Value	Master Value
mbstring.detect_order	no value	no value
mbstring.encoding_translation	Off	Off
mbstring.func_overload	0	0
mbstring.http_input	pass	pass
mbstring.http_output	pass	pass
mbstring.internal_encoding	EUC-JP	EUC-JP
mbstring.language	Japanese	Japanese
mbstring.strict_detection	Off	Off
mbstring.substitute_character	no value	no value


PHP-users メーリングリストの案内