[PHP-users 23744] mb_strimwidth()の動作について
Etsuo SUMIYA
e_sumiya @ f-den.co.jp
2004年 11月 29日 (月) 15:34:27 JST
sumiyaといいます.
mb_strimwidth()を用いて文字列の丸め処理を行っております.
文字列により,期待する動作をしないことがあります.何か設定オプショ
ンなどあるのでしょうか?
mb_strcut()を使うと期待通りの結果を返してくるので,スクリプトを書
き換えるつもりですが,すっきりしないのでどなたかわかる方,教えてく
ださい.
環境:
Windows 2000 Pro.
PHP 4.3.4+Apache 1.3.28
PHP.INI
[mbstring]
mbstring.language = Japanese
mbstring.internal_encoding = EUC-JP
mbstring.http_input = auto
mbstring.http_output = EUC-JP
mbstring.encoding_translation = On
mbstring.detect_order = auto
mbstring.substitute_character = none;
mbstring.func_overload = 0
-- PHP program --
<!doctype html public "-//w3c//dtd html 3.2//ja">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-jp">
<title>mb_strimwidth()・mb_strcut()</title>
<?php
$s = "12345678901×13.59m";
print $s;
$ss = mb_strimwidth($s, 0, 12, "");
print "<br>\n";
print $ss;
print "<br>\n";
$ss = mb_strcut($s, 0, 12);
?>
-- 実行結果 --
12345678901×13.59m
12345678901×
12345678901
12345678901あ13.59m
12345678901
12345678901
-- 期待する実行結果 --
12345678901×13.59m
12345678901
12345678901
12345678901あ13.59m
12345678901
12345678901
PHP-users メーリングリストの案内