Manipulando Strings
Eu diria que essa é uma das partes mais legais do PHP: brincar com as strings. São várias funções úteis para várias tarefas e por isso vou dividir a explicação delas em partes pra não ficar um post muito grande.
Função substr()
O substr() serve para você pegar apenas uma parte/pedaço/fatia da string.
Ele tem, normalmente, 3 argumentos: A string que será cortada (1), o início do corte (2) e o fim do corte (3).
Veja alguns exemplos de uso:
<?php $frase = 'O rato roeu a roupa do Rei de Roma'; echo substr($frase, 0, 6); // 5 primeiros caracteres a partir do 0° caractere // Retorno: O rato echo substr($frase, 3, 16); // 16 primeiros caracteres a partir do 3° caractere // Retorno: ato roeu a roupa echo substr($frase, 0, -1); // Todos os caracteres, até o penúltimo, a partir do 0° caractere // Retorno: O rato roeu a roupa do Rei de Rom ?>
Veja a documentação oficial:
http://br.php.net/manual/pt_BR/function.substr.php
Função strlen()
O strlen() serve para você saber quantos caracteres uma string tem.
ela tambem conta espaços em branco ok
Ele só tem um argumento: A string a ser medida (1).
Veja alguns exemplos de uso:
<pre><?php $frase = 'O rato roeu a roupa do Rei de Roma'; echo strlen($frase); // Retorno: 34 $frase = 'ozoriotsn'; echo strlen($frase); // Retorno: 9 ?></pre>
Veja a documentação oficial:
http://br.php.net/manual/pt_BR/function.strlen.php
Função strtolower()
O strtolower() serve para você converter toda a string para caixa-baixa (minúsculas).
Ele só tem um argumento: A string que será convertida (1).
<pre><?php $frase = 'O RATo rOeu a rOuPa Do Rei de Roma'; echo strtolower($frase); // Retorno: o rato roeu a roupa do rei de roma ?></pre>
Veja a documentação oficial:
http://br.php.net/manual/pt_BR/function.strtolower.php
Função strtoupper()
O strtoupper() serve para você converter toda a string para caixa-alta (maiúsculas).
Ele só tem um argumento: A string que será convertida (1).
<pre><?php $frase = 'O RATo rOeu a rOuPa Do Rei de Roma'; echo strtoupper($frase); // Retorno: O RATO ROEU A ROUPA DO REI DE ROMA ?>
Veja a documentação oficial:
http://br.php.net/manual/pt_BR/function.strtoupper.php
Função ucwords()
O ucwords() serve para você deixar a primeira letra de cada palavra da string em caixa-alta (maiúsculas).
Ele só tem um argumento: A string que será convertida (1).
<pre><?php $frase = 'jOsé da sILva fErReirA'; echo ucwords($frase); // Retorno: JOsé Da SILva FErReirA ?></pre>
Veja a documentação oficial:
http://br.php.net/manual/pt_BR/function.ucwords.php
Função ucfirst()
O ucfirst() serve para você deixar a primeira letra de uma string em caixa-alta (maiúsculas).
Ele só tem um argumento: A string que será convertida (1).
<pre><?php $frase = 'jOsé da sILva fErReirA'; echo ucfirst($frase); // Retorno: JOsé da sILva fErReirA ?></pre>
Veja a documentação oficial:
http://br.php.net/manual/pt_BR/function.ucfirst.php
Função explode()
O explode() serve para você dividir uma string, usando um separador, e criando um array com o resultado.
Geralmente ele tem dois argumentos: O separador (1) e a string que será convertida (2).
<pre><?php $separador = '@'; $frase = 'ozoriotsn@hotmail.com'; $partes = explode($separador, $frase); // $partes será um array com dois elementos: // [0] => ozoriotsn[1] => hotmail.com // ----------------------- $separador = '/'; $frase = '10/04/2009'; $partes = explode($separador, $frase); // $partes será um array com três elementos: // [0] => 10 [1] => 04 [2] => 2009 // ----------------------- $separador = ' '; $frase = 'olá mundo'; $partes = explode($separador, $frase); // $partes será um array com dois elementos: // [0] => olá [1] => mundo ?></pre>
Veja a documentação oficial:
http://br.php.net/manual/pt_BR/function.explode.php
Função join()
O join() serve para você juntar os elementos de um array usando uma string como cola/união. Ele faz o trabalho inverso do explode().
Geralmente ele tem dois argumentos: A string de união (1) e o array que será unido (2).
<pre><?php $uniao = '@'; $partes = array('ozoriotsn', 'hotmail.com'); echo join($uniao, $partes); // Resultado: ozoriotsn@hotmail.com // ----------------------- $uniao = 'x'; $partes = array('10', '04', '2009'); echo join($uniao, $partes); // Resultado: 10x04x2009 // ----------------------- $uniao = ' #@ '; $partes = array('olá', 'mundo'); echo join($uniao, $partes); // Resultado: olá #@ mundo ?></pre>
A função join() é um atalho da função implode(), ambas fazem a mesma coisa.
Veja a documentação oficial:
http://br.php.net/manual/pt_BR/function.implode.php
Aqui são funções para tratamento de strings no PHP que são de grande utilizade em muitos casos. vamos la então
Clique na função desejada para ver exemplos dela.
1. strlen() – Retorna o numero de caracteres de uma string
2. substr() – Retorna uma parte de uma string.
3. ucfirst() – Converte para maiusculo o primeiro caractere de uma string.
4. strtoupper() – Converte uma string para maiusculas.
5. strtolower() – Converte uma string para minusculas.
6. str_replace() – Substituição de caracteres em uma string.
7. strip_tags() – Retorna um string, retirando as tags HTML e/ou PHP.
8. htmlspecialchars() – Inválida os códigos HTML.
9. urlencode() – Retorna a string, convertida para o formato urlencode.
10. nl2br() – Converte a quebra de linha (n) por quebra de linha em HTML (<br>).
11. strrev() – Retorna a string invertida
12. trim() – Retira espaços e linhas em branco do inicio e do final da string fornecida.
13. str_pad() – Preenche uma string para um certo tamanho com outra string.
14. str_split() – Converte uma string para um array
15. str_shuffle() – Mistura uma string aleatoriamente
1. strlen()
Retorna o numero de caracteres de uma string.
Exemplo:
<pre><?php $str = "abcdef"; echo strlen($str); // Retorna 6 $str = ' ab cd '; echo strlen($str); // Retorna 7 ?></pre>
Exemplo prático:
<pre><?php /* Validar se um campo de formulário tem o número necessário de caracteres */ $nome = $_POST['comentario']; if (strlen($nome) > 200) { echo "O comentário deve ter no maximo 200 caracteres."; } ?></pre>
2. substr()
Retorna uma parte de uma string.
Exemplo:
<pre><?php $str = "abcdef"; // Positivo substr($str, 1); // Retorna "bcdef" substr($str, 1, 3); // Retorna "bcd" // Negativo substr($str, -2); // Retorna "ef" substr($str, -3, 1); // Retorna "d" // Acessar através de chave echo $str{0}; // Retorna "a" ?></pre>
Exemplo prático:
<pre><?php // Exibir os 100 primeiros caracteres de um texto $texto = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis ac felis. Nulla elementum tortor nec libero. Vestibulum tincidunt nisi quis arcu. Nunc feugiat justo euismod quam. Proin tortor turpis, vulputate eu, ullamcorper in, euismod nec, eros. Pellentesque et nisl. Curabitur ultrices justo vitae lacus. Etiam vehicula, nulla vel faucibus eleifend, turpis erat auctor metus, et faucibus nibh quam id nisl. Mauris vestibulum. Nam at tellus sed neque viverra posuere. Nullam id erat at arcu tristique lacinia. Integer eu nibh. Cras augue velit, rutrum sed, posuere ut, volutpat quis, dolor. In sed ipsum non massa commodo bibendum. "; echo substr($texto, 0, 100); ?></pre>
3. ucfirst()
Converte para maiusculo o primeiro caractere de uma string.
Exemplo:
<pre><?php $str = "hello world"; echo ucfirst($str); // Retorna "Hello world" ?> <strong><span style="font-family: mceinline;">4. strtoupper()</span></strong> Converte uma string para maiusculas. Exemplo: <?php $str = "eu sou uma string"; echo strtoupper($str); // Retorna "EU SOU UMA STRING" ?></pre>
5. strtolower()
Converte uma string para minusculas.
Exemplo:
<pre><?php $str = "EU SOU UMA STRING"; echo strtolower($str); // Retorna "eu sou uma string" ?></pre>
6. str_replace()
Substituição de caracteres em uma string.
Exemplo:
<pre><?php // Simples $texto = "Isso é uma droga mesmo"; echo str_replace("droga", "*****", $texto); // Retorna "Isso é uma ***** mesmo"; // Com Array $vogais = array("a", "e", "i", "o", "u", "A", "E", "I", "O", "U"); $apenasConsoantes = str_replace($vogais, "", "Hello World of PHP"); // Retorna "Hll Wrld f PHP" // Resumindo str_replace("O que vai ser substituido", "Pelo que vai ser substituido", "Aonde vai ser substituido"); ?></pre>
Exemplo prático:
<pre><?php // Filtrar um texto de palavrões $texto = "Nunca da certo pqp"; $palavroes = array("fdp", "vsf", "pqp", "droga"); echo str_replace($palavroes, "***", $texto); // Retorna "Nunca da certo ***" ?></pre>
7. strip_tags()
Retorna um string, retirando as tags HTML e/ou PHP.
Exemplo:
<pre><?php $texto = "<font color='#000'>String</font>"; echo strip_tags($texto); // Retorna apenas "String" ?></pre>
8. htmlspecialchars()
Inválida os códigos HTML.
Exemplo:
<pre><?php $texto = "<font color='red'>String</font>"; echo htmlspecialchars($texto); // Retorna "<font color='red'>String</font>", e não "String" na cor vermelha ?></pre>
9. urlencode()
Retorna a string, convertida para o formato urlencode.
Esta função é útil para passar valores para uma próxima página através do método GET.
Exemplo:
<pre><?php $frase = "Eu preciso ser passado por GET"; echo urlencode($frase) // Retorna "Eu+preciso+ser+passado+por+GET"; ?></pre>
Exemplo prático:
<pre><?php // Necessário para passar frases através do método GET $frase = "Eu preciso ser passado por GET"; $frase = urlencode($frase); echo "<a href='pagina.php?frase=".$frase."'>LINK</a>"; ?></pre>
10. nl2br()
Converte a quebra de linha (n) por quebra de linha em HTML (<br>).
Exemplo:
<pre><?php $nome = "RafaelnCoutonAlves"; echo nl2br($nome); // Retorna "Rafael<br />Couto<br />Alves" ?></pre>
Exemplo prático:
<pre><?php // Fazendo quebra de linha de um TEXAREA $textarea = $_POST['textarea']; // Texto vindo de um textarea echo nl2br($textarea); // O texto será exibido com quebra de linha ?></pre>
11. strrev()
Retorna a string invertida
Exemplo:
<pre><?php echo strrev("Função"); // Retorna "oãçnuF" ?></pre>
12. trim()
Retira espaços e linhas em branco do início e do final da string fornecida.
Exemplo:
<pre><?php echo trim(" faael n n "); // Retorna "faael" ?></pre>
13. str_pad
Esta função retorna a string input preenchida na esquerda, direita ou ambos os lados até o tamanho especificado. Se o parâmetro opcional pad_string não for indicado, input é preenchido com espaços, se não é preenchido com os caracteres de pad_string até o limite.
O parâmetro opcional pad_type pode ser STR_PAD_RIGHT (preencher a direita), STR_PAD_LEFT (preencher a esquerda), ou STR_PAD_BOTH (preencher de ambos os lados). If pad_type não for especificado é assumido que seja STR_PAD_RIGHT.
Se o valor de pad_length é negativo ou menor do que o tamanho da string , não há nenhum preenchimento.
Exemplo #1 Exemplo str_pad()
<pre><?php $input = "Alien"; print str_pad($input, 10); // produz "Alien " print str_pad($input, 10, "-=", STR_PAD_LEFT); // produz "-=-=-Alien" print str_pad($input, 10, "_", STR_PAD_BOTH); // produz "__Alien___" print str_pad($input, 6 , "___"); // produces "Alien_" ?></pre>
14. str_split
Descrição
array str_split ( string $string [, int $split_length ] )
Converte uma string em um array.
Exemplos
Exemplo #1 Exemplo utilizando str_split()
<pre><?php $str = "Hello Friend"; $arr1 = str_split($str); $arr2 = str_split($str, 3); print_r($arr1); print_r($arr2); ?></pre>
O exemplo acima irá imprimir:
<pre><?php Array ( [0] => H [1] => e [2] => l [3] => l [4] => o [5] => [6] => F [7] => r [8] => i [9] => e [10] => n [11] => d ) Array ( [0] => Hel [1] => lo [2] => Fri [3] => end ) ?></pre>
15. str_suflle
Descrição
Mistura uma string aleatoriamente
string str_shuffle ( string $str )
str_shuffle() mistura uma string. Uma permutação de todas as possibilidades é criada.
Exemplo #1 Exemplo da str_shuffle()
<pre><?php $str = 'abcdef'; $misturada = str_shuffle($str); // Isto exibirá algo como: bfdaec echo $misturada; ?></pre>
Então é isso. Essas são apenas algumas funções, você pode conferir todas no site do PHP (http://www.php.net/manual/pt_BR/ref.strings.php).