Olá amigos! Estou de volta com a 2ª parte da Biblioteca de Funções. Nesse artigo continuaremos falando sobre funções utilizadas no tratamento de strings, mas agora as funções estarão relacionadas a arrays e comparação entre strings.
Funções utilizadas no tratamento de strings
Funções relacionadas a arrays
Trabalhar com arrays pode ser tornar uma tarefa muito complicada quando não se conhece bem o seu funcionamento, mas pode se tornar muito simples quando se entende como funcionam e mais simples ainda quando as funções de manipulação de array são utilizadas, fazendo com que a precisão na obtenção dos dados seja perfeita.
Vejamos algumas funções.
Implode e join
string implode(string separador, array partes);
string join(string separador, array partes);
As funções Implode e Join são iguais. Resultam em uma string que contém os elementos do array fornecido separados pela string também fornecida na função.
Exemplo 1:
<?php
$array = array('nome', 'cidade', 'email');
$resultado = implode(",", $array);
print $resultado; // nome,cidade,email
?>
Exemplo 2:
<?php
$elementos = array("juntando", "elementos", "de", "um", "array");
$frase = join(" ",$elementos);
print $frase; // juntando elementos de um array
?>
Split
array split(string padrao, string str, int [limite]);
O valor retornado será um array e seu conteúdo será formado por partes da string fornecida, separadas pelo padrão fornecido, sendo possível dar limite ao número de elementos do array.
Exemplo 1:
<?php
$data = "08/03/2007";
$data_array = split("/",$data);
?>
$data_array passa a conter o array: array(08,03,2007);
Explode
array explode(string padrão, string str);
Seu funcionamento é bastante semelhante à função split, porém, é impossível estabelecer um limite para o número de elementos do array.
Exemplo 1:
<?php
$nomes = "joão pedro carlos maria josé carlos";
$lista = explode(" ", $nomes);
print $pieces[0]; // joão
print $pieces[1]; // pedro
?>
Comparações entre strings
Similar_text
int similar_text(string str1, string str2, double [porcentagem]);
Compara as duas strings fornecidas e retorna o número de caracteres coincidentes. Opcionalmente pode ser fornecida uma variável, passada por referência, que receberá o valor do percentual de igualdade entre as strings. Essa função é case sensitive, ou seja, maiúsculas e minúsculas são tratadas como diferentes.
Exemplo 1:
$txt = similar_text("teste", "testando",&$porc);
As variáveis passam a ter os seguintes valores:
$txt == 4; #quantidade de caracteres iguais entre as strings
$porc == 61.538461538462; #percentual de igualdade entre as strings
Strcasecmp
int strcasecmp(string str1, string str2);
Compara as duas strings e retorna 0 (zero) se forem iguais, um valor maior que zero se a str1 for maior que a str2, e um valor menor que zero se str1 for menor que a str2. Esta função é case insensitive, ou seja, maiúsculas e minúsculas são tratadas como iguais.
Exemplo 1:
<?php
$var1 = "Olá";
$var2 = "olá";
if (strcasecmp($var1, $var2) == 0) {
echo '$var1 é igual a $var2 numa comparação sem diferenciar maiúsculas e minúsculas';
}
?>
Strcmp
int strcasecmp(string str1, string str2);
O funcionamento dessa função é semelhante ao da anterior, porém ela é case sensitive.
Exemplo 1:
<?php
$var1 = "Olá";
$var2 = "olá";
if (strcasecmp($var1, $var2) == 0) {
echo '$var1 é diferente a $var2 numa comparação diferenciando-se maiúsculas e minúsculas';
}
?>
Strstr e Strchr
string strstr(string str1, string str2);
string strchr(string str1, string str2);
As duas funções são idênticas. Procura a primeira ocorrência de str2 em str1. Se não encontrar, retorna uma string vazia, e se encontrar retorna todos os caracteres de str1 a partir desse ponto. Cuidado, essas funções são case sensitives.
Exemplo 1:
strstr("Localizando partes de uma string", "ar"); // retorna "artes de uma string"
Stristr
string stristr(string str1, string str2);
Funciona de maneira semelhante à função strstr, com a diferença que esta é case insensitive, ou seja, maiúsculas e minúsculas são tratadas como iguais.
Exemplo 1:
<?php
$email = 'USUARIO@EXEMPLO.com.br';
$dominio = stristr($email, 'a');
print $domain; // retornará ARIO@EXEMPLO.com.br
?>
Strpos
int strpos(string str1, string str2, int [offset] );
Retorna a posição da primeira ocorrência de str2 em str1, ou zero se não houver. O parâmetro opcional offset determina a partir de qual caracter de str1 será efetuada a busca. Mesmo utilizando o offset, o valor de retorno é referente ao início de str1.
Exemplo 1:
<?php
$meutexto = 'abcde';
$localizar = 'a';
$pos = strpos($meutexto, $localizar);
/* Note o uso de ===. Simples == não funcionaria como esperado por causa da posição de 'a' é 0 (primeiro) caractere.*/
if ($pos === false)
{
echo "A string '$localizar' não foi encontrada na string '$meutexto'";
}
else
{
echo "A string '$localizar' foi encontrada na string '$meutexto'";
echo " e existe na posição $pos";
}
?>
Mais um artigo concluído, mais uma vitória alcançada. Que a minha vitória seja a sua vitória e que a sua vitória seja o sucesso de todos.
Até o próximo artigo!



