joaogil 1 Denunciar post Postado Abril 22, 2005 Como faço pra delimitar o tamanho de String (uma frase) sem quebrar palavras ? Por ex.: $STRING = "A casa é grande";Aí eu delimito a string em apenas 11 caracteres:Em vez de ficar assim: "A casa é gr" (com a palavra grande quebrada) Ficaria assim: "A casa é" (sem a palavra grande quebrada) ??? Compartilhar este post Link para o post Compartilhar em outros sites
Fabyo 66 Denunciar post Postado Abril 22, 2005 http://scriptbrasil.com.br/forum/index.php...50entry233025 Compartilhar este post Link para o post Compartilhar em outros sites
joaogil 1 Denunciar post Postado Abril 24, 2005 Valeu Fabyo, mas será que não exite algo + simples ? Compartilhar este post Link para o post Compartilhar em outros sites
radesign 0 Denunciar post Postado Abril 24, 2005 (...) será que não exite algo + simples ? <{POST_SNAPBACK}> Opa galera. Acabei de criar este script para aquilo que o joaogil pediu. PHP [*]<?php [*] [*] /* [*] ------------------------- [*] |Função reduzString() | [*] |por Renato Azevedo | [*] |24 de Abril de 2005 | [*] ------------------------- [*] */ [*] [*] [*] $string = "Como faço pra delimitar o tamanho de String (uma frase) sem quebrar palavras ??"; [*] [*] function reduzString ($str, $limite) { [*] [*] if(!is_string($str)) [*] return false; [*] if(!is_int($limite)) [*] return false; [*] if($limite <= 0) [*] return ""; [*] else if ($limite > strlen($str)) [*] return false; [*] else if($limite == strlen($str)) [*] return $str; [*] [*] $novaStr = substr($str,0,($limite+1)); [*] $tmpStr = $novaStr; [*] [*] $cont = substr_count($novaStr,' '); [*] $pos = 0; [*] [*] for($i=0;$i<$cont;$i++) { [*] [*] $pos = strpos($tmpStr,' '); [*] $tmpStr[$pos] = '*'; [*] [*] } [*] [*] $novaStr = substr($novaStr,0,$pos); [*] [*] return $novaStr; [*] [*] } [*] [*] // Testando função reduzString(); [*] [*] echo "String Original: "."<b>".$string."</b>"."<br>"; [*] echo "Tamanho string original: ".strlen($string)."<p>"; [*] [*] [*] for($tamanho=4;$tamanho <= strlen($string);$tamanho++) { [*] [*] echo "Limitando a string em <b>".$tamanho."</b> caracteres...<p>"; [*] $reduzida = reduzString($string,$tamanho); [*] [*] echo "<p>Nova String: "."<b>".$reduzida."</b>"."<br>"; [*] echo "Tamanho da String reduzida: ".strlen($reduzida)."<p>"; [*] [*] } [*] [*]?> A função reduzString() tem dois parâmetros e dois tipos de retorno: Parâmetros: $str:String, $limite:Integer Retornos: false, se os parâmetros estiverem incorretos; uma string reduzida caso os parâmetros forem passados corretamente; retornando uma string vazia caso $limite for negativo; Dúvidas, críticas ou sugestões, renato_anything@yahoo.com.br falows; http://forum.imasters.com.br/public/style_emoticons/default/bye1.gif Compartilhar este post Link para o post Compartilhar em outros sites
joaogil 1 Denunciar post Postado Maio 11, 2005 Até agora eu não precisei usar essa função, mas vou precisar e então vou testá-la, Obrigado !!! Compartilhar este post Link para o post Compartilhar em outros sites
Cerrito 0 Denunciar post Postado Maio 11, 2005 Kara belo script, posta ele tbm no lab de scripts...se sempre que tiver algo posta lá...a comunidade agradece...abraçosMarcio Compartilhar este post Link para o post Compartilhar em outros sites
joaogil 1 Denunciar post Postado Maio 21, 2005 Cara funciona direitinho essa função, é de utilidade pública, valeu ! Compartilhar este post Link para o post Compartilhar em outros sites