iconv_substr
Description
The iconv_substr of iconv for PHP cuts out part of a string.
Syntax
iconv_substr( string $string, int $offset, ?int $length = null, ?string $encoding = null ): string|false
Parameters
string
The original string.
offset
If offset is non-negative, iconv_substr() cuts out the portion of string beginning at offset'th character, counting from zero.
If offset is negative, iconv_substr() cuts out the portion beginning at the position, offset characters away from the end of string.
length
If length is positive, the return value will contain at most length characters of the portion that begins at offset (depending on the length of string).
If length is negative, iconv_substr() cuts the portion out of string from the offset'th character up to the character that is length characters away from the end of the string. In case offset is also negative, the start position is calculated beforehand according to the rule explained above.
encoding
If encoding parameter is omitted or null, string are assumed to be encoded in iconv.internal_encoding.
Note that offset and length parameters are always deemed to represent offsets that are calculated on the basis of the character set determined by encoding, whilst the counterpart substr() always takes these for byte offsets.
Return
Returns the portion of string specified by the offset and length parameters.
If string is shorter than offset characters long, false will be returned. If string is exactly offset characters long, an empty string will be returned.
Examples
1 · string offset · negative
<? $string = "string·string·string"; $offset = -9; $return = iconv_substr($string, $offset); echo $return;
ng·string
2 · string offset · non-negative
<? $string = "string·string·string"; $offset = 9; $return = iconv_substr($string, $offset); echo $return;
ring·string
3 · offset ·negative · length · negative
<? $string = "string·string·string"; $offset = -9; $length = -3; $return = iconv_substr($string, $offset, $length); echo $return;
ng·str
4 · offset · negative · length · positive
<? $string = "string·string·string"; $offset = -9; $length = 3; $return = iconv_substr($string, $offset, $length); echo $return;
ng·
5 · offset · non-negative · length · negative
<? $string = "string·string·string"; $offset = 9; $length = -3; $return = iconv_substr($string, $offset, $length); echo $return;
ring·str
6 · offset · non-negative · length · positive
<? $string = "string·string·string"; $offset = 9; $length = 3; $return = iconv_substr($string, $offset, $length); echo $return;
rin
7 · encoding
<? $string = "string·string·string"; $offset = 9; $length = 3; $encoding = "ISO-8859-1"; $return = iconv_substr($string, $offset, $length, $encoding); echo $return;
tri