Felipe Oliveira da Silva
Dicas de programação e portfólio
  • Javascript
  • MySQL
  • Outros
  • PHP
  • Trabalhos
    • Estrutura (CSS)
    • Hotsites
    • Sistemas
    • Websites
  • Web
PHP

Aprendendo a criar funções

Olá, em artigos anteriores aprendemos como trabalhar com funções pré-definidas no php. Agora vamos aprender como criar as próprias.

O que são funções?
Uma função é um bloco de código que se declara, para que possa ser utilizado sempre que necessário. Este processo, permite-nos simplificar a construção de sistemas, porque não temos de estar sempre a repetir as mesmas instruções. Com isso a mesma ajuda com que programas complicados e extensos se tornem mais simples facilitando a leitura do código e correções de bugs.

Exemplos simples de diferentes tipos de funções:

Função simples:

Exemplo:
1.  <?php
2. 
3.  //declarando a função
4.  function simples(){
5.      echo "Minha primeira função";
6.  }
7. 
8.  //chamando a função
9.  simples();
10. 
11. ?>

Linha 4: Declaramos a função com o nome "simples"
Linha 5:
Bloco que executamos quando a função for acionada
Linha 9: Chamamos a função "simples" para ser executada

Função com return:

Exemplo:
1.  <?php
2. 
3.  //declarando a função
4.  function simples(){
5.      return "Minha primeira função";
6.  }
7.
8.  //chamando a função e jogando o valor dentro da variável
9.  $retorno = simples();
10. echo $retorno;
11.
12. ?>

Linha 4: Declaramos a função com o nome "simples"
Linha 5:
Retornamos o valor a função
Linha 9: Chamamos a função "simples" para ser executada e armazenamos o valor retornado na variável $retorno
Linha 10: Imprimimos a variável $retorno

Função com passagem de arumentos:

Exemplo 1:
1.  <?php
2. 
3.  //declarando a função
4.  function simples($arg){
5.      echo $arg;
6.  }
7. 
8.  $frase = "Minha primeira função";
9.  //chamando a função e passando o argumento (valor)
10. simples($frase);
11.
12. ?>

Linha 4: Declaramos a função com o nome "simples" com a variável que vamos utilizar como argumento $arg
Linha 5:
Bloco que executamos quando a função for acionada. Neste caso imprimimos o valor passado como argumento
Linha 9: Chamamos a função "simples" passando a variável $frase como argumento
 

Exemplo 2:
1.  <?php
2. 
3.  $num1 = 10;
4.  $num2 = 5;
5.  function conta($arg1,$arg2){
6.      echo "<b>$arg1 + $arg2 = </b>". ($arg1 + $arg2) ."<br />";
7.      echo "<b>$arg1 – $arg2 = </b>". ($arg1 / $arg2) ."<br />";  
8.      echo "<b>$arg1 * $arg2 = </b>". ($arg1 * $arg2) ."<br />";
9.      echo "<b>$arg1 / $arg2 = </b>". ($arg1 / $arg2) ."<br />";   
10. }
11.
12. conta($num1,$num2);
13.
14. ?>

Linha 3: Declaramos a variável $num1 com o valor igual a 10
Linha 4: Declaramos a variável $num2 com o valor igual a 5
Linha 5: Declaramos a função com o nome "conta" com as variáveis que vamos utilizar como argumento $arg1 e $arg2
Linha 6 a 9:
Bloco que executamos quando a função for acionada.
Linha 12: Chamamos a função "conta" passando as variáveis $num1 e $num2 como argumentos

Postado em 13 de fevereiro de 2009 às 17:23

Seja o primeiro a comentar »

PHP

Funções básicas em PHP – parte 3

Função md5

A função md5 serve para criptografar dados. O md5 não pode ser "descriptografado" normalmente ele é usado para senhas. Assim você obtém uma segurança maior para não descobrirem a senha.
O modo de usar é bem simples o usuário digital a senha você aplica a função md5 nela e procura no banco de dados uma senha idêntica, caso obtenha a resposta true o login é liberado.
 

Exemplo:
<?php

$senha = ‘123senha’;

if (md5($senha) === ‘c370daca2aebfc52cb1cfa6ccb7df526′) {
    echo "Liberado!";
    exit;
}
else
    echo "senha incorreta";

?>

 
Função strstr

A função strstr serve para encontrar a primeira ocorrência de uma string
 

Exemplo:
<?php

$email = ‘teste@exemplo.com.br’;
$dominio = strstr($email, ‘@’);
echo $dominio;

?>

O exemplo acima irá imprimir:
@exemplo.com.br

 

Função stristr

A função stristr tem a mesma finalidade da strstr a única diferença é que ela encontra a primeira ocorrência de uma string sem diferenciar maiúsculase minúsculas.
 

Exemplo:
<?php

$email = ‘teste@exemplo.COM.br’;
$dominio = stristr($email, ‘c’);
echo $dominio;

?>

O exemplo acima irá imprimir:
COM.br

 

Função strlen

A função strlen serve retorna o tamanho de uma string
 

Exemplo:
<?php

$email = ‘teste@exemplo.com.br’;
echo strlen($email);

?>

O exemplo acima irá imprimir:
20

 

Postado em 12 de fevereiro de 2009 às 13:48

1 Comentário »

PHP

Redimensionando imagens em PHP

Hoje vou mostrar uma função para redimensionar imagens, seja ela para um sistema gerenciador de conteúdo ou uma simples galeria. Quem trabalha com programação web sabe que precisamos estar sempre aptos a lidar com imagens já que elas são itens fundamentais dentro dos websites.
Certo, mas por que ter um trabalho para fazer uma função dessa e não apenas pedir para o usuário administrador enviar as imagens no formato correto?

Isso seria uma das maiores burrices, Um porque daria muito trabalho para ficar redimensionando uma por uma e outra que se o cara não entender muito bem de Internet vai acabar fazendo besteira.
Lembra daquela velha frase “Nunca confie no usuário”.

Essa função suporta os tipos de imagens mais comuns, são elas:
PNG, JPG e GIF

Exemplo 1:
Redimensiona imagens de acordo com uma largura ou altura máxima, o que chegar primeiro.

function redimensiona($origem,$destino,$maxlargura=100,$maxaltura=100,$qualidade=80){
if(!strstr($origem,”http”) && !file_exists($origem)){
echo(“Arquivo de origem da imagem inexistente”);
return false;
}
$ext = strtolower(end(explode(‘.’, $origem)));if($ext == “jpg” || $ext == “jpeg”){
$img_origem = @imagecreatefromjpeg($origem);
}
elseif ($ext == “gif”){
$img_origem = @imagecreatefromgif($origem);
}
elseif ($ext == “png”){
$img_origem = @imagecreatefrompng($origem);
}
if(!$img_origem){
echo(“Erro ao carregar a imagem, talvez formato nao suportado”);
return false;
}
$alt_origem = imagesy($img_origem);
$lar_origem = imagesx($img_origem);
$escala = min($maxaltura/$alt_origem, $maxlargura/$lar_origem);
if($escala < 1){
$alt_destino = floor($escala*$alt_origem);
$lar_destino = floor($escala*$lar_origem);
// Cria imagem de destino
$img_destino = imagecreatetruecolor($lar_destino,$alt_destino);
// Redimensiona
imagecopyresampled($img_destino, $img_origem, 0, 0, 0, 0, $lar_destino, $alt_destino, $lar_origem, $alt_origem);
imagedestroy($img_origem);
}
else {
$img_destino = $img_origem;
}
$ext = strtolower(end(explode(‘.’, $destino)));
if($ext == “jpg” || $ext == “jpeg”){
imagejpeg($img_destino,$destino,$qualidade);
return true;
}
elseif ($ext == “gif”){
imagepng($img_destino,$destino);
return true;
}
elseif ($ext == “png”){
imagepng($img_destino,$destino);
return true;
}
else {
echo(“Formato de destino nao suportado”);
return false;
}
}

Exemplo 2:
Redimensiona imagens para o tamanho especificado, corta caso necessário.

function redimensiona_fixo($origem,$destino,$maxlargura,$maxaltura,$qualidade=80)
{
if(!strstr($origem,”http”) && !file_exists($origem)) {
echo(“Arquivo de origem da imagem inexistente”);
return false;
}
$ext = strtolower(end(explode(‘.’, $origem)));
if($ext == “jpg” || $ext == “jpeg”) {
$img_origem = @imagecreatefromjpeg($origem);
}
elseif ($ext == “gif”) {
$img_origem = @imagecreatefromgif($origem);
}
elseif ($ext == “png”) {
$img_origem = @imagecreatefrompng($origem);
}
if(!$img_origem) {
echo(“Erro ao carregar a imagem, talvez formato nao suportado”);
return false;
}$maxAltura = 20;
do {
$alt_origem = imagesy($img_origem);
$lar_origem = imagesx($img_origem);
$escala = min($maxAltura/$alt_origem, $maxAltura/$lar_origem);
$alt_destino = floor($escala*$alt_origem);
$lar_destino = floor($escala*$lar_origem);
$maxAltura = $maxAltura+2;
}while($alt_destino<=$maxaltura or $lar_destino<=$maxlargura);
$alt = ceil((((50*$alt_destino)/100))-ceil($maxaltura/2));
$lar = ceil((((50*$lar_destino)/100))-ceil($maxlargura/2));
// Cria imagem de destino
$img_destino = imagecreatetruecolor($maxlargura,$maxaltura);
// Redimensiona
imagecopyresampled($img_destino, $img_origem, -$lar, -$alt, 0, 0, $lar_destino, $alt_destino, $lar_origem,
$alt_origem);
imagedestroy($img_origem);
$ext = strtolower(end(explode(‘.’, $destino)));
if($ext == “jpg” || $ext == “jpeg”) {
imagejpeg($img_destino,$destino,$qualidade);
return true;
}
elseif ($ext == “gif”) {
imagepng($img_destino,$destino);
return true;
}
elseif ($ext == “png”) {
imagepng($img_destino,$destino);
return true;
}
else {
echo(“Formato de destino nao suportado”);
return false;
}
}

Agora vou mostrar como você chama a função:
$OBImagem = new OBImagem(); //Instância a classe
$OBImagem->redimensiona(“./img_real.jpg”,”./img.jpg”,90,90,75); //executa função redimensiona
$OBImagem->redimensiona_fixo(“./img_real.jpg”,”./img_peq.jpg”,107,80,60); //executa função redimensiona_fixo

Os parâmetros passados na função são respectivamente:
- Caminho da imagem real incluindo o nome da imagem e sua extensão
- Caminho onde irá gerar a nova imagem incluindo o nome da imagem e sua extensão
- Largura
- Altura
- Qualidade (Usado para imagens JPG)
Clique aqui para fazer o download do exemplo completo

Postado em 09 de fevereiro de 2009 às 13:53

19 Comentários »

PHP

Funções básicas em PHP – parte 2

Vamos conhecer agora mais algumas funções muito utilizadas no PHP.

Função explode

A função explode() tem por finalidade dividir uma string em strings.
Para usarmos a função explode é simples é só passarmos a variável e um caractere
separador.

Exemplo:
1.  <?php
2.  
3.  $carros = "corsa, polo, gol, parati, fusca, fiesta";
4.  $carros = explode(",", $carros);
5. 
6.  for($i=0; ($i<count($carros);($i++){
7.       echo "Carro $i: ".$carros[$i]."<br />";
8.  }
9. 
10. ?>
Linha 3: Declaramos a string $carros.
Linha 4: Aplicamos a função explode() na string $carros utilizando a virgula como caractere separador
Linha 6: Utilizamos o laço FOR para imprimir os valores e a função count() para sabermos o ponto de parada do laço.
O exemplo irá imprimir:
Carro 0: corsa
Carro 1: polo
Carro 2: gol
Carro 3: parati
Carro 4: fusca
Carro 5: fiesta

 

Função implode
 
Já a função implode é o processo inverso da função explode, ela junta elementos de um array em apenas uma string.

Exemplo:
1.  <?php
2.  
3.  $carros = array("corsa", "polo", "gol", "parati", "fusca", "fiesta");
4.  $carros = implode(", ", $array);
5. 
6.  echo $carros;
7.
8.  ?>
Linha 3: Declaramos o array() $carros;
Linha 4: Usamos a função implode() utilizando novamente a virgula como caractere separador. Quando aplicamos a função implode() no array. Ele junta todos elementos do array em apenas uma string separando-as por vírgulas.
O exemplo irá imprimir:
corsa, polo, gol, parati, fusca, fiesta

Função strip_tags

A função strip_tags é usada para retirar tags HTML de uma string. Com ela também conseguimos especificar quais as tags HTML que não queremos retirar da string.

 

Exemplo:
1.  <?php
2.  
3.  $texto = ‘<p>Primeiro parágrafo. <a href="link.html"><b>Link</b></a></p>’;
4. 
5.  echo strip_tags($texto);
6.  echo "<br /><br />";
7.  echo strip_tags($texto, ‘<a><b>’);
8.
9.  ?>

Linha 3: Declaramos uma string com tags HTML
Linha 5: Imprimimos na tela a string limpando todas as tags HTML.
Exemplo: Primeiro parágrafo. Link
Linha 7: Imprimimos na tela a string limpando todas as tags HTML menos as tags passadas como parâmetro, neste caso a tags <a> e <b>;
Exemplo: Primeiro parágrafo. <a href="link.html"><b>Link</b></a>

 

Função ereg

Checa a string comparando a com uma expressão regular caso seja verdadeira executa tal expressão. Também é utilizada para procuramos determinados caracteres em uma string, definirmos modelo de string entre outras coisas.

 

Exemplo:
1.  <?php
2.  
3.  $data = "2008-10-10";
4. 
5.  if(ereg("([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})", $data, $registros))
6.     echo "$registros[3].$registros[2].$registros[1]";
7.  else
8.     echo "Formato de data inválido: $data";
9.
10. ?>

Linha 3: Declaramos a string com a data 2008-10-10
Linha 5: Checamos com expressão regular se o formato da string data é yyyy-mm-dd.

Linha 6: Caso o formato seja verdadeiro imprime a data dd.mm.yyyy
Linha 8: Caso o formato seja falso imprime “Formato de data inválido: $data”
 
Bom, por hoje é só. Essa semana publico mais algumas funções básica do PHP.

Postado em 03 de fevereiro de 2009 às 15:45

5 Comentários »

PHP

Funções para Array

Caso não saiba como funciona um array leia o artigo “Arrays em PHP”.

Vamos ver algumas funções básica que permitem a interação e manipulação de arrays de várias formas no PHP.

Array
$frutas =   array("laranja", "banana", "uva", "maça");


array_keys – Retorna todas as chaves de um array
$arr = array_keys($frutas);
print_r($arr);

O exemplo acima irá imprimir:
Array
(
    [0] => a
    [1] => b
    [2] => c
    [3] => d
)
 

array_key_exists – Checa se uma chave ou índice existe em um array
if(array_key_exists("a", $frutas))
   echo "A chave "a" existe";
else
   echo "A chave "a" não existe";

O exemplo acima irá imprimir:
A chave "a" existe
 

array_search – Procura por um valor em um array e retorna sua chave correspondente caso seja encontrado
$arr = array_search("banana", $frutas);
print_r($arr);

O exemplo acima irá imprimir:
b
 

array_unique – Remove o valores duplicados de um array
$arr = array_unique($frutas);
print_r($arr);

O exemplo acima irá imprimir:
Array
(
    [a] => laranja
    [b] => banana
    => maça
    [d] => uva
)
 

array_values – Retorna todos os valores de um arrayy
$arr = array_values($frutas);
print_r($arr);

O exemplo acima irá imprimir:

Array
(
    [0] => laranja
    [1] => banana
    [2] => maça
    [3] => uva
)
 

array_walk – Aplica uma determinada função em cada elemento de um array
$function test_print($item2, $key)
{
    echo "$key. $item2<br /";
}
array_walk($frutas, ‘test_print’);

O exemplo acima irá imprimir:
a. laranja
b. banana
c. maça
d. uva
 

count – Conta o número de elementos de uma variável, ou propriedades de um objeto
$arr =  count($frutas);
print_r($arr);

O exemplo acima irá imprimir:
4
 

in_array – Checa se um valor existe em um array
if(in_array("maçã", $frutas))
    echo "A palavra "morango" esta no array";
else
    echo "A palavra "morango" não esta no array";

O exemplo acima irá imprimir:
A palavra "morango" não esta no array
 

key – Retorna uma chave de um array
while ($fruit_name  =  current($frutas)) {
    if ($fruit_name == "uva") {
        echo key($frutas)."<br />’;
    }
    next($frutas);
}

O exemplo acima irá imprimir:
d
 

krsort – Ordena um array pelas chaves em ordem decrescente
krsort($frutas);
print_r($frutas);

O exemplo acima irá imprimir:
Array
(
    [d] => uva
    => maça
    [b] => banana
    [a] => laranja
)
 

ksort – Ordena um array pelas chaves
ksort($frutas);
print_r($frutas);

O exemplo acima irá imprimir:
Array
(
    [a] => laranja
    [b] => banana
    => maça
    [d] => uva
)
 

rsort – Ordena um array em ordem decrescente
rsort($frutas);
print_r($frutas);

O exemplo acima irá imprimir:
Array
(
    [0] => uva
    [1] => maça
    [2] => laranja
    [3] => banana
)
 

sort – Ordena um array em ordem crescente
sort($frutas);
print_r($frutas);

O exemplo acima irá imprimir:
Array
(
    [0] => banana
    [1] => laranja
    [2] => maça
    [3] => uva
)

Fonte: php.net

Postado em 22 de janeiro de 2009 às 17:43

Seja o primeiro a comentar »

Busca

  • Popular
  • Comentados
  • Últimos

  • Galeria de fotos com jquery - Demo 1
  • Criando tabelas no MySQL
  • Envio de e-mail com PHPMailer
  • Recebendo dados de formulário
  • Conectando ao Banco de Dados MySQL com PHP
  • Operadores (aritmético, comparação, lógico, atribuição)
  • Lightbox 2
  • Trabalhando com data no PHP
  • Redimensionando imagens em PHP
  • Programação Orientada a Objetos em PHP
  • Galeria de fotos com jquery – Demo 1 (84)
  • Envio de e-mail com PHPMailer (32)
  • Lightbox 2 (30)
  • Redimensionando imagens em PHP (19)
  • Criando abas com Javascript (16)
  • Conectando ao Banco de Dados MySQL com PHP (16)
  • Estruturas de repetição em PHP (while, do while, for e foreach) (9)
  • Criando tabelas no MySQL (9)
  • Até o "concorrente" usa GMAIL (9)
  • Recebendo dados de formulário (6)
  • Conectando ao Banco de Dados MySQL com PHP
  • Programação Orientada a Objetos em PHP
  • GOL Indica
  • Manga comunicação e marketing
  • Firefox 4.0 deve ser lançado em 2010
  • Google Street View se preocupa com a privacidade das pessoas
  • Atrações Educativas – Educar para crescer
  • Realidade aumentada
  • Projetos Residentes Roc
  • Office 2010 com nova proteção antipirataria

Categorias

  • Estrutura (CSS)
  • Hotsites
  • Javascript
  • MySQL
  • Outros
  • PHP
  • Sistemas
  • Web
  • Websites

Arquivos

  • dezembro 2009
  • outubro 2009
  • setembro 2009
  • agosto 2009
  • julho 2009
  • junho 2009
  • maio 2009
  • abril 2009
  • março 2009
  • fevereiro 2009
  • janeiro 2009
  • dezembro 2008
  • novembro 2008

Tags

abas array banco de dados Bing.com chrome classes Condicionais conexão construtor Cookie CSS domínio expressão FAQ firefox formulário função Funções Galeria de fotos gmail google google chrome google maps Hotmail IE IE7 IE8 IE9 Internet internet explorer Javascript jquery kingston Layout Microsoft MySQL métodos objetos PHP Portfólio SEO sistema tecnologia twitter Web

Lista de links

  • Eduardo Willian
  • Fred Carbonare
  • Jhonatan
  • Rafael Jaques

© Felipe Oliveira da Silva
Wordpress Theme designed by DT Website Templates