just fyi, iconv_substr() unknown error (0) has been resolved in PHP 5.2
you can also try mb_substr() or just substr() when dealing with this issue. Unfortunately there is no way to fix it in versions prior to 5.2.
Regards,
Teodor Sandu
iconv_substr
(PHP 5)
iconv_substr — 文字列の一部を切り出す
説明
$str
, int $offset
[, int $length = iconv_strlen($str, $charset)
[, string $charset = ini_get("iconv.internal_encoding")
]] )
文字列 str の、
start と length
で指定された一部を返します。
パラメータ
-
str -
元の文字列。
-
offset -
startが負でない場合、 iconv_substr() はstrのstart番目の文字(ゼロから数えて)から切り出します。startが負の場合、 iconv_substr() はstrの最後から数えてstart番目の文字から切り出します。 -
length -
lengthが指定され、かつ正である場合、 返される文字列はstartから数えて最大length文字数分となります (stringの長さに依存します)。もし負の
lengthが渡された場合に iconv_substr() が切り出す文字列は、strのstart番目の文字からはじまり、文字列の最後から数えてlength文字分戻ったところまでとなります。startも負の場合、開始位置は 上で説明した方式で計算されます。 -
charset -
charsetが指定されなかった場合、文字セットは ini 設定 iconv.internal_encoding で定義された値とみなされます。offsetやlengthのパラメータは、常にcharsetで定義された 文字セットにおける文字数と判断されることに注意してください。 一方、substr() の場合はこれらの値を常に バイト数として判断します。
返り値
文字列 str の、
offset と length
で指定された一部を返します。
もし str が start
の文字列長より短い場合は、FALSE が返されます。
<?=
iconv_substr("A",0,1);
?>
generates folowing error:
Notice: iconv_substr() [function.iconv-substr]: Unknown error (0) in [...]
while, <?= iconv_substr("AB",0,1) ?> and <?= iconv_substr("AB",0,2) ?>
work as expected.
