Gabem MVP 0 Denunciar post Postado Dezembro 30, 2010 Olá, eu preciso checar se as variáveis possuem algum conteúdo, pra isso eu tentei utilizar: if ( $var <> "" ) { bla } Porém percebi que se o valor for " " (vários espaços consecutivos) ele aceita. Eu vi que existe a função empty(); porém não sei se ela considera espaços como conteudo. A solução que eu encontrei foi usar strstr($var," "). Eu queria saber qual é a forma mais correta de fazer essa verificação. Obrigado. Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Dezembro 30, 2010 The following things are considered to be empty: "" (an empty string) 0 (0 as an integer) "0" (0 as a string) NULL FALSE array() (an empty array) var $var; (a variable declared, but without a value in a class) fonte: http://php.net/manual/en/function.empty.php Um teste prático: beraldo@orion:/tmp$ cat teste.php <?php $str1 = ''; $str2 = ' '; var_dump( empty( $str1 ) ); var_dump( empty( $str2 ) ); ?> beraldo@orion:/tmp$ php teste.php bool(true) bool(false) O PHP considera $str2 como não vazio. No seu caso, strstr() pode resolver se for proibido qualquer espaço. Outra possibilidade é usar preg_replace(), por exemplo, e retirar todos os espaços excessivos trim() também pode ser útil Compartilhar este post Link para o post Compartilhar em outros sites