Aprender PHP

Assine o RSS

Começando a programar em PHP

Criado em: 19/02/2010 12:00:00

Inicio da programação em PHP

Para começarmos a programar em PHP primeiro abra o seu editor de texto ou IDE preferido, analise entre as melhores IDE para PHP e tabela comparativo entre as melhores IDE para PHP ambos em inglês. Uma boa saida é o Aptana e o plugin para desenvolvimento em PHP mais você pode utilizar o seu preferido.

Delimitadores de código PHP

Assim como o HTML temos as tags no PHP temos os delimitadores de código, que são <?php e ?> respectivamente a tag de abertura e a tag de fechamento, em que o código deve ser inserido. Veja o exemplo a seguir:

<?php

// Código PHP aqui!!!

?>

Além dos delimitadores de código <?php e ?> todas as suas páginas devem possuir a extensão .php por exemplo: meu-primeiro-programa.php

Ou ainda como mencionado no artigo anterior sobre o que é o PHP podemos misturar o PHP com o HTML como pode ser observado no exemplo a seguir.

<?php

// Sim também podemos ter código PHP antes do DocType.

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Titulo da minha página</title>
<?php

// Código PHP aqui dentro do head.

?>
</head>

<body>
<?php

// Código PHP aqui dentro do body!!!

?>
</body>
</html>
<?php

// Código PHP aqui até depois de fecharmos a tag html!

?>

Como você pode perceber podemos escrever código PHP misturado com o HTML em qualquer parte do código. Além do exemplo que eu mostrei imagine que você queira gerar o titulo da sua página pelo PHP dinamicamente o que você faria? Isso mesmo colocaria as tags do PHP dentro da tag title e realizaria uma rotina para gerar o titulo dinamicamente.

Caso você já tenha programado algo em PHP ou baixado algum script em PHP talvez já tenha se deparado com as tags respectivamente de abertura e fechamento assim:

  1. <? ?>
  2. <% %>
  3. <script language=”PHP”> </script>

O mais utilizado é o primeiro caso, no entanto não o utilize. Pois com o avanço do PHP este tipo de escrita pode ser desabilitado e ainda pode ocorrer a possibilidade de seu servidor web não aceitar este tipo de tag.

Por isso prefira sempre as tags <?php e ?>.

Conceito de variável

Variáveis como você já deve estar imaginando apenas pelo nome é tudo aquilo que é sujeito a variações, que é incerto, instável ou inconstante, ou seja, pode mudar durante sua existência. Vamos a uma analogia para entendermos o conceito de variáveis. Imagine a seguinte situação:
Joãozinho mora na casa de seus pais desde que nasceu e passa a maior parte do dia em seu quarto. Com o passar dos anos o quarto de Joãozinho foi mudando, seus brinquedos foram trocados por um computador, seu berço foi trocado por uma cama, seu guarda-roupa de criança foi trocado por um de adulto, as paredes foram pintadas de cores diferentes e Joãozinho ganhou uma televisão em seu quarto.
Como você já deve ter imaginado a nossa variável aqui foi o quarto de Joãozinho, que com o passar do tempo foi variando seu conteúdo.

Trazendo o conceito de variável ao PHP e a nossas páginas de internet. Voltemos ao exemplo anterior em que misturamos PHP e HTML. O conteúdo que ficaria dentro da tag body gerado pelo PHP seria uma variável, que dependo da página que estaríamos acessando este valor, ou seja, ele seria variável. A página inicial teria um valor naquela variável e página de contato já teria um valor diferente em sua variável.

As variáveis no PHP

Agora que você já possui um conceito de variável iremos ver como criar nossas variáveis no PHP. As variáveis servem para armazenar dados que podem ser utilizado em qualquer parte do programa. Para criar uma variável em PHP você deve seguir algumas regras, são todas bem fáceis de se acostumar, veja a seguir:

  1. As variáveis são representadas por um cifrão ($) seguido pelo nome da variável
  2. O PHP é case sensitive, ou seja, ele diferencia minúsculas de maiúsculas. Sendo então $nome diferente de $Nome e $NoMe
  3. Nomes de variáveis devem ser iniciados apenas com uma letra ou _ (sublinhado) e podem ser seguido de letras ou algarismos, ou seja, números podem aparecer em outras posições exceto na primeira
  4. Nunca utilize caracteres especiais em nome de uma variável como acentos (é í ó) cedilha (ç)

Exemplo de variáveis validas no PHP

Veja a seguir exemplos de nomes válidos para variáveis, baseadas nas regras que estudamos anteriormente.

<?php

$nome = 'Mauro George';
$nascimento = '06/09/1989';
$sobre_nome = 'Oliveira Tavares';

?>

Exemplo de variáveis invalidas no PHP

Agora alguns nomes de variáveis invalidas no PHP que não devem ser utilizadas.

<?php

$20_anos_e_nome = 'Mauro George';
$ nascimento = '06/09/1989';
$*este_é_meu_sobrenome = 'Oliveira Tavares';

?>

Como você já deve ter imaginado o sinal de = (igual) é utilizado para atribuir um valor a variável, aprenderemos mais sobre eles quando chegarmos em operadores de atribuição.

Separação de instruções

Você também deve ter reparado no exemplo anterior que depois definirmos um valor a variável terminamos utilizando o sinal de ; (ponto e virgula). Este é o separador de instruções do PHP, ou seja, sempre que definirmos uma variável ou imprimirmos algo na tela devemos utilizar o ;.

Enviando resultados ao browser, o uso do comando echo

Você deve estar imaginando acabei de criar varias variáveis mais como que eu faço para exibir o conteúdo que guardei em cada uma delas? E neste ponto que aprenderemos exibir o valor de nossas variáveis na tela. Mais primeiro exibiremos o mais clichê de todas as linguagens de programação o famoso “Hello World”.

Aconselho a partir deste ponto criar uma pasta com o nome de estudos em seu diretório HTDOCS e vá testando os exemplos que serão mostrados a seguir.

Não se esquecendo de salvar os arquivos com a extensão .php

<?php

echo 'Hello World';

?>

Repare que ainda não exibimos os dados de uma variável apenas exibimos um texto comum.

Exibindo dados das variáveis no PHP

Agora iremos exibir os valores de nossas variáveis no browser utilizando o PHP, para isso utilizaremos as variáveis que criamos anteriormente.

<?php

$nome = 'Mauro George';
$nascimento = '06/09/1989';
$sobre_nome = 'Oliveira Tavares';


echo $nome;
echo $sobre_nome;
echo $nascimento;

?>

Você deve ter percebido que como exibimos varias variáveis quando terminou o dado de uma ele “colou” com o dado da próxima variável mais isto será concertado quando chegarmos a concatenação de strings, mais neste ponto o interessante é vermos que conseguimos exibir o valor da variável.

Posso exibir dados das variáveis no PHP misturado com o HTML?

SIM! Como o PHP se mistura ao HTML podemos exibir os dados em conjuntos vejam um exemplo pratico.

<?php

$titulo = 'Aqui vai o titulo da minha página';
$css = '<link rel="stylesheet" type="text/css" href="css/estilos.css" />';
$conteudo = 'Aqui é o conteudo mais como não tenho nenhum... <br /> vai apenas um<br /><br /> <strong>Hello World</strong>';

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title><?php echo $titulo; ?></title>

<?php
echo $css;
?>
</head>

<body>
<?php

echo $conteudo;

?>

<p>Eu posso repetir o valor da variavel sempre que eu quiser sabia? Veja aqui o nosso titulo denovo "<?php echo $titulo; ?>"</p>
<p>E não necessariamente deveria imprimir $titulo apenas porque eu a declarei primeiro poderia imprimir $css antes e depois $titulo ou qualquer uma variavel isso vai de acorodo com sua necessidade</p>
<p>Agora irei exibir $conteudo novamente olhe ela ai</p>
<p><?php echo $conteudo; ?></p>

</body>
</html>

Repare que além do PHP esta misturado ao HTML também a tags de HTML no valor da minha variável em PHP.

As variáveis podem ser exibidas sempre que necessário na tela, veja que repeti algumas variáveis mais de uma vez.

E ainda independente da ordem de declaração das variáveis elas podem ser chamadas a sua escolha. Mesmo eu tendo declarado $titulo, $css e $conteudo eu poderia exibir na tela primeiro $conteudo e $css e por ultimo exibir $titulo a ordem de exibição sou eu que faço.

No entanto o seguinte exemplo geraria um erro:

<?php

echo $nome;
echo $sobre_nome;
echo $nascimento;

$nome = 'Mauro George';
$nascimento = '06/09/1989';
$sobre_nome = 'Oliveira Tavares';

?>

Você sabe me dizer o por quê? Se você respondeu que devido a tentarmos exibir uma variável sem antes declará-la você acertou. Ou seja, antes de exibirmos qualquer dado antes devemos o ter declarado previamente.

Comentários no PHP

O PHP nos fornece um suporte a comentários que vem a ser muito útil quando estamos desenvolvendo sistemas. Temos os seguintes tipos de comentários no PHP:

  1. // comentário de uma linha apenas
  2. # também comentário de uma linha apenas
  3. /* */ comentário de múltiplas linhas

Veja todos eles em funcionamento abaixo:

<?php

// Comentario de uma linha apenas
# Outro modo de escrever um comentario de uma linha

/* Comentario de varias linhas com
 este podemos quebra linha e escrever
 quantas linhas quisermos.
*/

// Apenas um nome
$nome = 'Mauro George';
# A data de nascimento de uma pessoa
$nascimento = '06/09/1989';
// O Sobre nome de uma pessoa
$sobre_nome = 'Oliveira Tavares';

/* Aqui exibimos o nome
o sobre nome e a data de nascimento de
uma pessoa
*/
echo $nome;
echo $sobre_nome;
echo $nascimento;

?>

Constantes no PHP

Como você já deve ter imaginado as constantes no PHP guardam valores que nunca serão alterados. Diferente das variáveis que possuem valores que podem ser alterados, sendo assim após definida uma constante ela não pode ser alterada ou removida.

Para definirmos uma constante utilizamos o comando define(); que tem sua sintaxe a seguir:

define( ‘NOME_DA_CONSTANTE’, ‘VALOR DA CONSTANTE’ );

O nome de uma constante tem a mesma regra de qualquer identificador PHP, ou seja, as mesmas regras de nomes de variáveis exceto pelo fato de constantes não iniciarem o nome com cifrão ($).
Veja um exemplo a seguir em que utilizamos uma constante.

<?php
// Defino o titulo da minha página
$titulo = 'Exemplo utilizando Constantes';
// Apenas um nome
$nome = 'Mauro George';
// A data de nascimento de uma pessoa
$nascimento = '06/09/1989';
// O Sobre nome de uma pessoa
$sobre_nome = 'Oliveira Tavares';
// Defino o ESTADO da pessoa que é uma constante
define( 'ESTADO', 'Rio de Janeiro' );

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title><?php echo $titulo; ?></title>
</head>

<body>
<p><?php echo $nome; ?> <?php echo $sobre_nome; ?>, nascido em <?php echo $nascimento; ?> nasceu no <?php echo ESTADO; ?></p>
</body>
</html>

Agora que você entendeu o funcionamento de uma constante deve estar se perguntando: qual a diferença real entre variáveis e constantes?
Acompanhe o exemplo a seguir e observe que variáveis podem ter seus valores modificados durante a execução de uma página, já as constantes seus valores nunca podem ter seus valores alterados.

<?php
// Defino o titulo da minha página
$titulo = 'Exemplo utilizando Constantes';
// Apenas um nome
$nome = 'Mauro George';
// A data de nascimento de uma pessoa
$nascimento = '06/09/1989';
// O Sobre nome de uma pessoa
$sobre_nome = 'Oliveira Tavares';
// Defino o ESTADO da pessoa que é uma constante
define( 'ESTADO', 'Rio de Janeiro' );

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title><?php echo $titulo; ?></title>
</head>

<body>
<p><?php echo $nome; ?> <?php echo $sobre_nome; ?>, nascido em <?php echo $nascimento; ?> nasceu no <?php echo ESTADO; ?></p>
<?php
/**
 * Redefino os valores das seguintes variaveis
 *
 */
$nome = 'Jéssica';
$nascimento = '12/07/1990';
$sobre_nome = 'Monteiro da Silva';
define( 'ESTADO', 'São Paulo' );

?>
<p><?php echo $nome; ?> <?php echo $sobre_nome; ?>, nascido em <?php echo $nascimento; ?> nasceu no <?php echo ESTADO; ?></p>
</body>
</html>

Por padrão sempre escreva o nome de constantes em maiúsculo e separado por _ (sublinhado). Exemplo:

MINHA_CONSTANTE, UMA_CONSTANTE, CONSTANTE

E não se esqueça que constantes não são iniciadas com o cifrão ($).

Ultima alteração em: 26/02/2010 09:01:56

Comentários

Vinicius em 27/02/2010

Parabens pela iniciativa Mauro. Espero me tornar um discipulo seu no final do aprendizado po aqui:) grande abraco!

Gerson em 04/03/2010

Simplesmente o melhor que já encontrei pela internet. De todos os posts que pesquisei, esse foi "SHOW". Realmente, você passou os passos fundamentais para que o código funcionasse perfeitamente. Muito obrigado pela ajuda! Parabéns!!!

Mauro em 05/03/2010

Que bom que gostou @Gerson, estaremos sempre com artigos atualizados para ajudar no seu aprendizado.

Assine o feed e acompanhe as atualizações.

Grande abraço!

Vilson em 01/04/2010

Mauro, gostaria de ler um artigo que poderia ser uma continuação desse enfoque básico, que misturou html e php, mostrando-nos como fazer uma boa prática de programação "clean", que tentasse não misturar php com html. Obrigado.

Mauro em 02/04/2010

Vilson, provavelmente ocorrerá. É que como estamos iniciando agora, o foco ainda é fazer os leitores assimilarem bem a idéia de constantes, variáveis em seguida as estruturas de controles e por aí vai.

Para mantermos uma boa prática de programação teremos antes que abordar aqui sobre objetos também, para aí sim partirmos para os design patterns e chegarmos ao MVC onde separaremos a aplicação em camadas.

Para quem já for mais avançado e quiser uma introdução ao MVC temos alguns artigos pela internet além de livros, e pra quem já conhece ou quer conhecer o MVC pode partir para um dos Frameworks que temos por aí como o Zend Framework, CakePHP etc.

Dieguez em 06/06/2010

Cara muito bom seus tutoriais, bem bacana essa iniciativa, estou gostando muito do método que está utilizando para repassar essas informações, muito obrigado.

Mauro em 14/06/2010

Fala Dieguez, que bom que está gostando. Valeu pelo comentário assim só me anima mais a escrever. Desculpa o atraso aí em relação aos artigos é a falta de tempo, mais estou iniciando o próximo.

Saulo em 26/07/2010

Estou começando agora com o PHP, achei esse site enquanto pesquisava, e realmente é muito bom. Parabéns!

Mauro em 03/08/2010

Alisson e Saulo,

Que bom que estão gostando. Desculpe a falta de publicação de artigo mais em breve tentarei publicar mais artigos.

Campideli em 27/11/2010

Tô chegando pra aprender... pelo que vi vai dar certinho ficar na area aqui com vcs.

Gorrin em 03/12/2010

Cara, tô começando a programar do zero... E gostei demais do seu site... tudo muito simples e direto, fácil de digerir...
Parabens!!!

Mushi em 03/12/2010

Yoh...
como estou iniciando agora a programar você tirou muitas duvida minha...é um site Megaboga....PARABÉNS!!!

Alan Homobono em 11/02/2011

A introdução ao PHP mais fácil que já vi.

Continue escrevendo artigos sobre PHP!

Ricardo Matheus em 23/02/2011

Parabéns pela iniciativa! Espero poder aprender muito com seus tutoriais. Depois no final viraria uma bela apostilinha!

Baang em 27/02/2011

Olá, muito obrigado pelo topico muito bom msm eu nao tinha nem ideia de como começar programar em php e esse site foi meu ponta pé incial muito obrigado pelo tuto

RCarvalho em 02/03/2011

Cara, muito bom seu tópico. Explicações com muito exemplo e texto prático são o melhor para que se aprenda algo.
Apenas uma observação: na linha 31 do último exemplo (referente às constantes), você usou a constante ESTADO que estaria com o valor "Rio de Janeiro" para retornar o valor "São Paulo". Não seria o caso de usar uma constante ESTADO2 ou algo do tipo para nao descaracterizar o uso da constante, por ex:

define ('ESTADO', 'Rio de Janeiro');

define ('ESTADO2', 'São Paulo');
/*porque a constante ESTADO já é 'Rio de Janeiro' portanto, usarei outra constante para 'São Paulo'.*/
Daí, todos os moradores de SP receberiam a variável 'ESTADO2' e RJ 'ESTADO'.

Mais uma vez meus parabéns pelos exemplos práticos sem a enrolação clássica, e é claro, de material atualizado sobre o assunto na net ;)
Valeeu!

Mauro em 07/03/2011

Que bom que gostou dos textos.

Quanto a sua observação o ultimo exemplo, antes do código a uma explicação, mostrando a real diferença entre as variáveis e as constantes. O que fiz foi proposital para gerar erro pois a constante não pode ser redeclarada como as variáveis, no texto isto é explicado.

Quanto ao seu exemplo está correto, no entanto prefira nomes semânticos para as variáveis, constante, funções etc. Exemplo ao invés de ESTADO e ESTADO2 prefira RIO_DE_JANEIRO e SAO_PAULO pois assim é mais fácil de você mesmo ao revisitar o código saber do que se trata a constante quanto para outros programadores.

Valeu pelos elogios.
Abraço.

Rodrigo em 30/03/2011

Muito bom cara.. gostei muito.. usou bem as palavras e soube explicar bem.. parabéns! e obrigado.

Fellipe em 08/04/2011

Claro , simple e objetivo. PARABÉNS e muito obrigado !

Antonio em 13/04/2011

valeu cara bem explicado para quem está começando a aprender, parabéns.

fabio em 03/05/2011

ola nao entendo nada de programaçao muito menos php qual sewria o primeiro passo pra que eu aprenda a programa em php tem algum curso on line completo

henrique do tudoencontra.com em 09/05/2011

Muito legal mesmo.
Procurei como programar em php no google achei entrei aqui e achei perfeito este início de aula que você está dando.
Por favor continue dando estas aulas que você ta no caminho certo.
parabéns e até mais!
www.tudoencontra.com

abraços henrique

Gustavo em 13/05/2011

Realmente, esse site é sensacional!

Parabéns para o(s) autor(es)!

Maia em 22/05/2011

Não tem sido fácil encontrar na net aplicações com trabalhos tão claros nos seus conteúdos como este. Mais uma vez parabens por me ter ajudado com o seu trabalho

Mauro em 23/05/2011

Maia, que bom que o conteúdo tem lhe ajudado. Bons estudos.

Luís Miguel em 24/05/2011

Muito bom tutorial, nota 10.

rafael em 29/05/2011

Cara mt bom esse tuto eu to no segundo ano de web designer começo php ano q vem mais ja e bom entender a logica dele, mt bom esse post.

Mario em 29/06/2011

Gostei muito desse site!
espero novos tutoriais

Otávio em 13/07/2011

As tags <% %> são de asp e não de php

Elves Ribeiro em 22/07/2011

Muito bom mesmo, está de parabéns!

Marcão em 29/07/2011

Está de parabéns. Ótimos artigos. Espero aprender muito por aqui :-)

Márcio Eduardo Moraes Winter em 12/10/2011

Valeu cara! Muito bom!! Estou aprendendo graças ao seu trabalho!

Reinaldo Gomes em 11/11/2011

Muito bom esse método de ensino, ficou bastante claro pra quem está começando a programar. Valeu!

marcelo em 13/11/2011

Copiei e Colei o codigo, apagando os numeros das linhas, no bloco de notas... salvei como SITE.HTML, mas nao funcionou. Onde errei?

marcelo em 16/11/2011

Copiei novamente e agora salvei com php e tambem nao deu certo... lembrando estou fazendo em meu pc...

DOM em 26/11/2011

Literalmente o fio da meada! valéw

Val em 05/12/2011

Parabéns pela explicação. Excelente! Uma ótima didática, muita objetividade, clareza. Espero que continue. Valew muito, abç

co.cc em 07/12/2011

to preciando de banco de dados vs programação maleavel

nilson em 06/01/2012

Mauro, eu fui copiar o texto dessa página pro word pra me ler mais tarde e ele ficou bloqueado. Não escreve nada, nem apaga nada. Minha irma precisa fazer um trabalho da faculdade urgente e não pode por que não se consengue escrever nada diz só que a seleção está bloqueada. Por favor me ajude!!

decinhoweb em 11/01/2012

parabens por compartilhar seu conhecimento espero que tambem aprenda com nossas duvidas ... valeu

Vanio em 19/01/2012

Cara como faço para exibir acento no php, já usei a função cabeçalho porem os dados no MySQL vem bagunçado

Allan Cordeiro em 27/01/2012

Não consegui configurar o Apache pra funcionar o PHP no NetBeans.

Lady em 29/01/2012

Esse tutorial foi melhor que os primeiros. Atualizem a página de instalação do Apache, PHP e etc, pq seguindo os passos lá indicados não funciona mesmo.

Amigo, instala o Xamp ou Wamp, é mais prático!

Eliton em 02/02/2012

Boa garoto, simples como andar pra frente :)

Adicionar Comentário