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
(PHP 5, PHP 7, PHP 8)
iconv_substr — 文字列の一部を切り出す
$string
,$offset
,$length
= null
,$encoding
= null
文字列 string
の、
offset
と length
で指定された一部を返します。
string
元の文字列。
offset
offset
が負でない場合、
iconv_substr() は
string
の offset
番目の文字(ゼロから数えて)から切り出します。
offset
が負の場合、
iconv_substr() は
string
の最後から数えて
offset
番目の文字から切り出します。
length
length
が指定され、かつ正である場合、
返される文字列は offset
から数えて最大 length
文字数分となります
(string
の長さに依存します)。
もし負の length
が渡された場合に
iconv_substr() が切り出す文字列は、
string
の offset
番目の文字からはじまり、文字列の最後から数えて
length
文字分戻ったところまでとなります。
offset
も負の場合、開始位置は
上で説明した方式で計算されます。
encoding
encoding
が指定されなかった場合、もしくは null
の場合、文字セットは
ini 設定 iconv.internal_encoding
で定義された値とみなされます。
offset
や length
のパラメータは、常に charset
で定義された
文字セットにおける文字数と判断されることに注意してください。
一方、substr() の場合はこれらの値を常に
バイト数として判断します。
文字列 string
の、
offset
と length
で指定された一部を返します。
もし string
が offset
の文字列長より短い場合は、false
が返されます。
string
が
offset
の文字数に等しい場合、
空文字列が返されます。
バージョン | 説明 |
---|---|
8.0.0 |
length と encoding は、nullable になりました。
|
7.0.11 |
string が
offset の文字数に等しい場合、
空文字列が返されます。
これより前のバージョンでは、この場合 false が返されていました。
|
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("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.