Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Falae, galera :) eh o seguinte...$variavel = " bla bla ";se eu der um trim($variavel) vai me retornar "bla bla", correto? perfeito. porém, suponhamos q " bla bla " foi pego através de $_POST['variavel'];$variavel = $_POST['variavel'];se eu der um trim($variavel) vai me retornar "", ou seja, ele come toda a string!!!alguem sabe me explicar o porquê disso????? :(
<form action="testetrim.php" method="post">bote a string:<br><input type="text" name="string"><br><input type="submit" value="Enviar" name="envia"><br><br></form>if($_POST["envia"]){ $string = $_POST["string"]; $original = "$string"; $com_trim = trim("$string"); $sem_espac = trim($string," ");print("<br>string original: \"$original\"<br>string com trim normal: \"$com_trim\"<br>string sem espaços: \"$sem_espec\""); if(!trim("$string")) print("<br>A string é vazia."); else print("<br>A string nao eh vazia."); }?>
esse é o código.... executa pra você ver, a string sem espaços sai vazia "" :(
e se você substituir o $_POST["string"] por qualquer outro texto tipo "aqui minha string..", ele vai executar direitinho..
qual o erro?
faça...print trim($string);
Não entendi também as aspas "$string"... isso força a conversão pra string diversas vezes... o próprio trim() retorna string independentemente do argumento.
o nome da variavel está errado, provavelmente por isso nao mostra...sem_espec e sem_espacabraços
vixiiii, disfarça.... heuahea nem vi o erro ali... o fabricio ta certo, eu escrevi errado :D quanto à conversão pra string diversas vezes.... isso tem algum contra? aliás, eu testei isso aki: $valor = "a a a a a";$string = trim($valor," ");print($string);nao deveria retornar aaaaa? ele retorna a a a a aesse trim nao vai destruir todos os espaços em branco? ou ele soh pega o caracter q tá no começo e no fim? se eu quiser destruir caracter no meio da string vo ter q deslocar bits igual no C? ou apenas com strreplace?
trim -- Retira espaço no ínicio e final de uma string ltrim -- Retira whitespace do início da string rtrim -- Retira espaço em branco do final da string Se você quer substituir todos os espacos, use a função:str_replace -- Substitui todas as ocorrências da string de procura com a string de substituição
Além do str_replace(), você pode usar expressões regulares pra limpar os espaços em branco... numa ER, pra você casar um espaço em branco é "\s"... ele casa barra de espaços, tabs e enters.
Falou!
agora sim.. clareou hehe
brigadão galera http://forum.imasters.com.br/public/style_emoticons/default/clap.gif
nao tem erros na função trim() nem bugs , você deve ter errado em alguma coisa njo script
posta seu script ai