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 — Corta parte de uma string
$string,$offset,$length = null,$encoding = null
   Corta uma parte da string especificada pelos parâmetros
   offset e length.
  
stringA 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.
      
   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.
  
| Versão | Descrição | 
|---|---|
| 8.0.0 | lengtheencodingsão anuláveis agora. | 
| 7.0.11 | Se stringfor igual
        ao comprimento dos caracteres deoffset, uma string
        vazia será retornada. Antes desta versão,falseera retornado neste caso. | 
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