Função PHP para exibir uma string em singular ou plural

Num post anterior, falei sobre o Plugin Smarty para exibir uma string em singular ou plural que eu acabara de criar. Como alguns não utilizam o Smarty, adaptei o plugin de forma que ele possa ser utilizado como uma função PHP. Observe a forma de uso:

echo singular_plural(‘%d Comentário’, ‘%d Comentários’, $totalComentarios);

No exemplo acima, será exibido “x comentário” se a variável, $totalComentarios, tiver um valor igual ou menor que 1. Caso contrário, ou seja, se variável, $totalComentarios, tiver um valor maior que 1 será exibido “x comentários”.

Abaixo segue o código da função:

/**

 * Shows a singular or plural message based in a informed number

 * How to use: singular_plural( '%d child', '%d children', 2 );

 *

 * @version 0.1

 * @date Monday, January 7, 2008

 * @author Leandro Vieira Pinho - http://leandrovieira.com

 */

function singular_plural( $strMsgSingular, $strMsgPlural, $intTotal )

{

 if ( $intTotal > 1 )

 	return sprintf( $strMsgPlural, $intTotal );

 	return sprintf( $strMsgSingular, $intTotal );

}

Até o próximo.

4 ideias sobre “Função PHP para exibir uma string em singular ou plural

  1. Bom em inglês roda lisa mas em pt-br não :P

    Adaptação:

    function singular_plural( $strMsgSingular, $strMsgPlural, $intTotal )

    {
    return sprintf( ($intTotal 1) ? $strMsgPlural : $strMsgSingular, $intTotal);
    }

    Fica a dica =)

  2. Ops, maldito blog o_O

    Antes do um temos o sinal de (menor maior)

    O blog retira pensando que é uma tag HTML :)

  3. Ola Leandro, você poderia colocar a adaptação do Gabriel ? Pois não entendi o que ele fez já que o comentário dele foi alterado pelo blog (retirando a tag html)…

    Abraços,

    Renato