iconv_substr

(PHP 5, PHP 7, PHP 8)

iconv_substrCorta parte de uma string

Descrição

iconv_substr(
    string $string,
    int $offset,
    ?int $length = null,
    ?string $encoding = null
): string|false

Corta uma parte da string especificada pelos parâmetros offset e length.

Parâmetros

string

A string original.

offset

Se offset não for negativo, iconv_substr() corta a parte da string começando no offset'th caractere, contando a partir de zero.

Se offset for negativo, iconv_substr() corta a parte que começa na posição, desloca offset caracteres para longe do final da string.

length

Se length for fornecido e for positivo, o valor de retorno conterá no máximo caracteres de length da parte que começa no offset (dependendo do comprimento da string).

Se length for negativo, iconv_substr() cortará a parte da string desde o caractere offset'th até o caractere do length final da string. Caso offset também seja negativo, a posição inicial é calculada antecipadamente de acordo com a regra explicada acima.

encoding

Se o parâmetro encoding for omitido ou null, presume-se que a string esteja codificada em iconv.internal_encoding.

Observe que os parâmetros offset e length são sempre considerados como representando deslocamentos que são calculados com base no conjunto de caracteres determinado por encoding, enquanto a contraparte substr() sempre os considera deslocamentos de byte.

Valor Retornado

Retorna a parte da string especificada pelos parâmetros offset e length.

Se string for menor que os caracteres de offset, false será retornado. Se string tiver exatamente o comprimento de caracteres de offset, uma string vazia será retornada.

Registro de Alterações

Versão Descrição
8.0.0 length e encoding são anuláveis agora.
7.0.11 Se string for igual ao comprimento dos caracteres de offset, uma string vazia será retornada. Antes desta versão, false era retornado neste caso.

Veja Também

add a note add a note

User Contributed Notes 2 notes

up
-1
doru87 at gmail dot com
14 years ago
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
up
-7
qbolec at terra dot es
16 years ago
<?=
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.
To Top