Primeiro vamos começar pela explicação de cada uma delas segundo as varias documentações disponiveis na net uma delas é a do proprio site do PHP (http://www.php.net).
each: retorna o chave e o valor atual de um array, um ex:
$dados=array("Nome"=>"alex","Idade"=>"19");
$par=each($dados);
echo $par[0];// devera imprimir Nome.
Esta função é especialmente util para a coleta de dados vindo de um formulario, pois se ultilizada com função list()(explicada mais adiante) sera de grande valia.ex:
while(list($nome_campo,$valor_campo) = each($_POST))
{
echo "$nome_campo = $valor_campo";//imprimara por exemplo, Nome = Paula Idade=15
}
foreach: segundo o manual: existe especificamente para lidar com arrays. Ele provém uma maneira fácil de percorrer qualquer array. Basicamenete o foreach serve para percorremos um array. sua sintaxe :
foreach(expressao_array as $valor){ instrucoes}
foreach(expressao_array as $chave => $valor){ instrucoes}
ex:
$cesta=array("amora","maçã","abacate");
foreach($cesta as $fruta)
{
echo $fruta."n"; // devera imprimir amora maça abacate
}
$diretores=array("Produção"=>"Roberto","Administrativo"=>"Sandra");
foreach($diretores as $departamento => $diretor)
{
echo "Departamento : $departamento , Diretor(a) : $diretor";
//Departamento: Produção, Diretor(a) : Roberto Departamento : Administrativo, Diretor(a) : Sandra
}
count:retorna o numero de elementos de um array ex:
$array=array("1","2");
$cont=count($array);
echo $cont; //mostrara 2
arsort:ordena um array em ordem decrescente mantendo a relação de indice,valor. ex:
$array=array("1"=>"1","5"=>"2","115"=>"3");
arsort($array);
foreach($array as $indice => $valor)
{
echo "$indice => $valor"."/n"; //saida : 115=>3 5=>2 1=>1
}
asort :ordena um array. ex:
$array=array("1"=>"3","5"=>"2","115"=>"1");
arsort($array);
foreach($array as $indice => $valor)
{
echo "$indice => $valor"."/n"; //saida : 115=>1 5=>2 1=>3
}
extract : Converte os pares indice=>valor em variaves sintaxe(array,tipo extração,prefixo).
Tipo de extração pode ser:
1.EXTR_OVERWRITE(sobrescreve as variaveis existentes).
2.EXTR_SKIP(não sobre escreve as variaveis).
3.EXTR_PREFIX_SAME(se hover colisão(nome iguais)coloca um prefixo).
4.EXTR_PREFIX_ALL(coloca prefixo no nome de todas as variaveis),
ex:
$array=array("nome"=>"Alex");
extract($array,EXTR_OVERWRITE);
echo $nome;// imprimira Alex
$var="teste";
$array=array("teste"=>"10","var"=>"você");
extract($array,EXTR_SKIP);
echo $var;//imprimira teste
$var="teste";$var2="teste2";
$array=array("var"=>"oi","var2"=>"teste2");
extract($array,EXTR_PREFIX_ALL,"P");
echo $var;//teste
echo $P_var;//oi
list: é usada para criar uma lista de variáveis em apenas um operação.
Nota: list() só funciona em arrays com índices numéricos e assume que esses índices começam de 0 (zero).
ex:
$array[0]="Alex"; $array[1]="Email"; list($nome,$email)=$array; echo $nome;//imprimira Alex
key: retorna o indice da posição atual de um array.
pos:retorna o elemento corrente de um array.
Bom pessoal é isso um pequeno exemplo da varias ferramentas que o PHP nos oferece para o trabalho com array.
Para programadores fazer somas com data pelo PHP pode ser uma tarefa díficil por isso fiz um pequeno resumo de como trabalhar com datas no PHP.
Sintaxe da Função date:
string = date(string formato,int [data e hora em timestamp]);
no primeiro parametro string formato existe as seguintes opções :
d = dia no formato numérico de ex: ” 01″ a “31″.
D = as 03 do dia textual ex: “fri”
F = mês textual ex: “january”
m = mês no formato 00 a 12
Y = no no formato 2003
y = ano no formato 03
h = hora no formato 00 a 12
H = hora no formato de 00 a 23
i = minutos
s = segundos
Apartir destes dados você podera facilmente mostrar a data e hora atual da seguinte forma :
Echo “hora atual date(’d-m-Y h:i’)”;
Simples não é ?
Bom isto você mostra atual mas se você por exemplo precisar trabalhar com uma data que não seja atual a passagem do segundo parametro se faz necessaria sendo que este parametro tem que ser no formato timestamp que nada mais é do que a quantidade de segundos passados desde meia-noite de 1970.
O PHP tem algumas funções para fazer este trabalho para nós J uma delas é time().
Sintaxe : int time();
Isto que dara o numero de segundos passados 1970 até o momento atual.
Outra função para gerar o timestamp é o mktime();
Sintaxe : int mktime(int hora,int minuto,int segundo,int mês,int dia ,int ano);
Exemplo:
$dia = 25;
$mês = 12;
$ano = 2003;
$ts= mktime($hora,$min,$seg,$mês,$dia,$ano);
echo $ts; // isto gerou o time timestamp
date ('d-m-Y',$ts); // isso deverar imprimir 25-12-2003.
Bom agoramos já conhecemos todas as funções vamos a um pequeno exemplo pratico:
echo "Data e Hora : ".date('d-m-Y H:i');
$dia = 25 ; // pega o dia de natal
$mes = 12 ; // pega o mes
$ano = date('y'); // o ano
$dia_atual = date('d'); // pega dia atual
$mes_atual = date('m'); // pega o mes atual
$ts = mktime($hora,$min,$seg,$mes - $mes_atual,$dia - $dia_atual,$ano);
echo "Falta ".date('m',$ts)." meses"." e ".date('d',$ts)." dias"." para o natal"." , Boas Compras hohoho...";
/*
Bom isto foi a subtração. agora vamos imaginar que estamos construindo uma loja virtual e determinado produto ou serviço pode ser pago em três parcelas,ou seja, 30,60,90 dias e vc precisa gerar os boletos com as repectivas datas, vamos ao trabalho. */
$dia_da_compra = date('d');
$mes_da_compra = date('m');
$ano_da_compra = date('Y');
$parcela = 30; // primeira parcela daqui a 30 dias
for ($cont = 1 ; $cont <= 3; $cont++)
{
$ts = mktime($hora,$min,$seg,$mes_da_compra,$dia_da_compra + $parcela,$ano);
echo "Data de Pagamento da $cont ° parcela : ".date('d-m-Y',$ts)."
";
$parcela = $parcela + 30;
}
Estatisticas Site muito interessante sobre uso do php na internet, fica claro como o php tem um marketshare impressionante, deixando claro para quem tem duvidas do poder desta tecnologia.
Este blog tem objetivo de servir como uma ferramenta de aprendizagem e referência , que pretendo atualizar com informações sobre o mundo de desenvolvimento de aplicações, como noticias, curiosidades e pequenos tutoriais.
Para saber mais sobre sub-titulo, visite http://en.wikipedia.org/wiki/KISS_principle
seja bem vindo !