Battle Maker

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Suporte para criação de Jogos


    Tutorial-PHP para iniciantes

    Game Over
    Game Over
    Administrador
    Administrador


    Mensagens : 140
    Credibilidade : 9

    Tutorial-PHP para iniciantes Empty Tutorial-PHP para iniciantes

    Mensagem por Game Over Qui Set 08, 2011 10:14 pm

    Olá membro venho postar um tutorial para iniciante para quem aprender a lingem PHP espero que voceis gostem está não foi criada por mim é de um amigo então deixarei o nome dele nos créditos ok, boa aula !.

    Introdução
    Caso você já tenha tido a oportunidade de ler outro tutorial, provavelmente já viu que PHP é uma linguaguem Server-Side, ou seja, que é executada no, e somente, no servidor. Diferente do Javascript por exemplo que é uma linguaguem Client-Side, executada no cliente (internauta).

    Dessa forma, há coisas fora do nosso alcance para realizar no PHP. Como por exemplo, alterar a cor de um botão ao internauta pressionar a letra "b". Isso está sendo executado aonde? No servidor ou no cliente? Já pensando em nosso fórum, faça essa pergunta para você mesmo antes de criar um tópico. Isso é ou não é relacionado à PHP?

    Como vamos ver desde ponto em diante, comentários em alguns scripts, vamos ver as possiveis formas de adicionar um comentário no PHP.

    <?php
    // Comentário de 1 linha

    # Comentário de 1 linha

    /* Comentário em bloco

    segue comentado até finalizar o bloco

    com */

    ?>
    O que vamos ver nesse tutorial?
    Antes de prosseguir, vamos deixar claro que, estou considerando que você já está com um servidor web com o PHP rodando em sua máquina, ou com um servidor online. Configurações padrões do php.ini 4.3.0+ (register_globals = off).

    Vou tentar, através desse tutorial, abranguer os primeiros passos dado ao PHP, elevando um pouco a dificuldade em cada passo que damos. Não é minha intenção passa funções relacionadas à banco de dados nesse primeiro tutorial, mas para um segundo, isso seria o foco. Então vamos parando com o lero-lero e começar a ralar Tutorial-PHP para iniciantes Wink

    "Adeus Mundo!"
    Por que sempre o famoso "Olá Mundo!"? Vamos estar nos escondendo dele ao tentar aprofundar em PHP. Quanto mais você se interessa em aprender, mais festas deixará de participar, menos garotas irá conhecer e mais sóbrio irá ficar (estou em dúvida se isso é um fato bom ou ruim).

    - Nossa, mas ele sempre tira tempo para outra piadinha horrível...

    Táááááá booooooooom! Todas as páginas, para serem executados os códigos/instruções PHP, precisam ter sua extensão .php (.php3 está ficando para trás). Sabemos qual a extensão das páginas para serem consideradas PHP, e agora, como eu crio um código PHP? Por padrão, um código PHP é iniciado com a tag <?php e encerrado com ?>. Não vamos nos ater à outras tags, mas só para conhecimento existem as opções:

    <? ?>
    <% %>
    <script languague="php"> </script>

    Certo, vamos criar nossa página "tut01.php" e "limpe" o código fonte dela, não vamos trabalhar com html ainda, somente com a saída PHP. Vamos iniciar um bloco de código PHP e fazer uma saída para o navegador.

    <?php
    echo "Adeus Mundo!";
    ?>

    Como diria meu amigo, Jack Estripador, vamos por partes, ou melhor, por linhas.
    Linha 01: <?php => Iniciamos o bloco PHP;
    Linha 02: echo "Adeus Mundo!"; => echo é uma função do PHP para imprimir uma saída no navegador. Escrevemos a saída entres aspas pois não estamos trabalhando com variáveis ainda. Utilizamos o ";" no final de cada linha de comando, caso contrário um erro é gerado;
    Linha 03: ?> => Encerramos o bloco PHP.

    Salvamos essa página e publicamos no servidor. A única saída que temos no navegador será "Adeus Mundo!" (sem as aspas). O código fonte também omite qualquer outra saída, sendo assim, o PHP somente apresentará para o usuário o que for mandado apresentar.

    - Certo, mas por que o Joãzinho usa o print? Não tem diferença?

    Embora muitos digam que não, tem sim. Claro, nada que seja muito utilizado em casos "normais", mas que há uma diferença, há. Tempo de execução, exatamente iguais, sem diferença nisso. Digamos que a única visivel seja, print retorna para uma variável TRUE ou FALSE. (lembrando, essa parte é somente para tirar a dúvida de algumas pessoas em relação a comparação de echo e print, não há necessidade de decorar nada daqui).

    <?php
    $print = print "Teste";
    // A saída será Teste, mas agora apresente a variável

    echo $print;
    // Saída 1 ou TRUE
    ?>

    Eba! Já sei apresentar um conteúdo no navegador
    Agora vamos começar a complicar um pouco mais. Vamos ver como apresentar um mais número de saídas no mesmo bloco, e logo em seguida, começaremos a utilizar algumas variáveis.

    <?php
    echo "Nome:";
    echo "Luciano";
    ?>

    Mas preciso realmente preciso utilizar duas vezes echo?!?! Não é necessário, para isso, nós utilizamos a concatenação "." (em outras linguaguens é mais comum ver o símbolo "+" para concatenação, mas no PHP é o "." mesmo).

    <?php
    echo "Nome:" . "Luciano";
    ?>

    Você se pergunta, qual a vantagem disso? Poderia colocar os dois textos juntos. Sim, realmente poderia, mas é uma introdução à concatenação. Agora veremos a utilização de variáveis.

    O que diabos são variáveis?
    São apenas blocos de memória para armazenamento de alguma informação. Texto, números, arquivos, etc... Novamente, diferente de outras linguaguens, no PHP você não é obrigado a definir o tipo de variável que deseja utilizar (int, float, bool, ...). Vamos à alguns exemplos:

    <?php
    $minha_variavel = "Meu texto";
    ?>

    Vamos seguir o exemplo do nosso amigo Jack Estripador, por partes. Como podem ver, para declarar uma variável iniciamos o texto com o caracter "$", ele é que indica que o texto a seguir será uma variável. Algumas observações quanto à variáveis:

    - Você não pode iniciar um nome de variável com números, ex: $1. Mas pode utilizar nas demais partes do nome, ex: $a1;
    - O PHP é case-sensitive (há diferenças entre $nome, $Nome e $NOME);
    - Utilize sempre variáveis com nomes indicando o seu conteúdo, para simplificar a manutenção de terceiros e até mesmo a sua.

    Tenho uma variável, o que faço com ela?
    Digamos que a base de todas as linguaguens de programação são variáveis, pois, se não precisa-se de conteúdos variáveis, por que programaria? Simplesmente utilizava HTML.

    Vamos à um outro código:

    <?php
    $nome = "Luciano";
    $idade = 19;
    ?>

    Declaramos duas variáveis no exemplo acima, uma chamada $nome, com o valor "Luciano" e outra, chamada $idade, com o valor 19. Por que não foi utilizado aspas para inserir o valor 19? Simples, variáveis do tipo texto (text) precisam ser inseridas entre aspas, já as numerais (int, float, ...) você simplesmente precisa informar o número.

    Beleza, agora temos duas variáveis e não fizemos nada com elas...
    Calma lá! Vamos juntar tudo que vimos até agora:

    <?php
    $nome = "Luciano";
    $idade = 19;
    echo "Olá, meu nome é " . $nome . " e tenho " . $idade . " anos.";
    ?>

    Aqueceu a mente agora? Jack neles:

    $nome = "Luciano" => Simplesmente declaramos uma variável, como haviamos feito anteriormente;
    $idade = 19 => Mesmo que o anterior, declaração de outra variável;
    echo ...... => Complicou? Bom, temos a primeira parte "Olá, meu nome é " que é a apresentação de um texto estático para o navegador, utilizamos o "." para adicionar outro valor à apresentação, $nome aqui apresentamos o valor da variável $nome, veja que não é escrito no navegador a palavra "$nome", mas sim "Luciano", adicionamos outro bloco de texto estático, o valor da variável $idade, e por fim, " anos.".

    É isso então? Boa sorte no PHP e comece a trabalhar!


    ...........
    É, infelizmente não é só isso não, temos muuuuuuuuito mais desafios pela frente. Que tal algumas funções básicas que podemos fazer trabalhando com variáveis:

    strlen(TEXTO)
    <?php
    $nome = "Luciano";
    echo "Seu nome tem " . strlen($nome) . " letras.";
    ?>

    A funcionalidade da função strlen é de contar o número de caracteres que temos em determinada string (texto). Utilizamos a concatenação em uma função, como podem ver, podemos concatenar textos estáticos, variáveis e funções.

    substr(TEXTO, INICIO, [ANDAR])
    <?php
    $nome = "Luciano";
    echo "A primeira letra de seu nome é " . substr($nome, 0, 1);
    ?>

    A função substr tem por objetivo "cortar" parte de um texto para a apresentação. O primeiro parâmetro passamos o texto a ser cortado, por segundo o caracter onde deve ser dado o inicio do corte (lembrando que começa do 0, não do 1), e por final, mas não obrigatório, quantos caracteres devem ser "andados", caso não passe nenhum valor, será até o final do texto.

    trim(TEXTO)
    <?php
    $variavel = " OI ";
    echo trim($variavel);
    ?>

    trim elimina os espaços em branco do inicio e do final de um texto.

    ucfirst(TEXTO)
    <?php
    $nome = "luciano";
    echo ucfirst($nome);
    ?>

    ucfirst capitaliza (existe essa palavra?!) a primeira letra de um texto.

    strtoupper(TEXTO)
    <?php
    $nome = "Luciano";
    echo strtoupper($nome);
    ?>

    strtoupper transforma todas as letras de um texto em maiuscula.

    strtolower(TEXTO)
    <?php
    $nome = "Luciano";
    echo strtolower($nome);
    ?>

    strtolower é a função inversa de strtoupper. Transforma todos os caracteres em minusculo.

    str_replace(PESQUISA, SUBSTITUI, TEXTO)
    <?php
    $texto = "isso foi xxxxxx mesmo";
    echo str_replace("xxxxxx", "****", $texto);
    ?>

    str_replace procura por uma combinação de letras e a substitui em determinado texto. Outras opções nessa função podem ser vistas com a utilização de matrizes.

    Captei! Vamos para Matrizes
    Digamos que o monstro para muitos programadores iniciantes. Matrizes são grupos de valores em uma única variável. No PHP temos algumas maneiras para iniciar uma matriz:

    <?php
    $matriz_a = array("João", "Maria");
    $matriz_b[] = "João";
    $matriz_b[] = "Maria";
    ?>

    Ambas teriam o mesmo conteúdo. Na primeiro forma ($matriz_a) declaramos que a variável é do tipo array (matriz) e em seguida passamos os valores para ela. Já na segunda, colocamos cada valor separamente. Caso não seja definido um índice para a matriz, ela se auto-inicia do 0 e também se incrementa de acordo com a necessidade.

    <?php
    $matriz = array("Oi", "Tchau");
    echo $matriz[0]; // Oi
    echo $matriz[1]; // Tchau
    ?>

    Criamos nossa matriz, e em seguida apresentamos os valores dela, como não definimos índice em nenhum dos casos, ela se iniciou no 0 e foi se incrementando.

    Mas como definir um índice?
    Vamos ver nas duas formas:

    <?php
    $matriz = array(5 => "João", "indice" => "Maria");
    echo $matriz[5]; // João
    echo $matriz["indice"]; // Maria
    ?>

    <?php
    $matriz[5] = "João";
    $matriz["indice"] = "Maria";
    echo $matriz[5];
    echo $matriz["indice"];
    ?>

    Certo, mas matriz não tem vantagem nenhum em relação às variáveis normais...
    10 minutos e você mudará completamente de idéia. Vamos criar uma lista de nomes em uma variável e apresenta-las:

    <?php
    $nome1 = "Luciano";
    $nome2 = "João";
    $nome3 = "Maria";

    echo $nome1;
    echo $nome2;
    echo $nome3;
    ?>

    Divertido, não? Imagine fazer dessa forma para 500 nomes? Eu não queria ser programador nesses casos... Agora vejamos com matrizes:

    <?php
    $nomes = array("Luciano", "João", "Maria");
    foreach( $nomes as $nome ) {
    echo $nome;
    }
    ?>

    NÃO!!! Não desista agora. Nosso amigo Jack vai explicar melhor tudo isso:

    $nome = array(...) => Criamos nosso array, nada de novo
    foreach( $nomes as $nome ) { => Opa, algo novo aí. Para quem conhece inglês já deve ter imaginação do que isso faz, foreach (para cada):

    para cada( $nomes como $nome )

    Ele irá passar por TODOS os valores da matriz e copiar o seu valor para a variável $nome. Interessante não? É como se executá-se-mos o código tantas vezes quanto há valores na matriz.

    Utilizamos "{" e "}" para determinar o inicio e fim do nosso comando foreach. Tudo que está entre eles será repetido.

    Vamos à outro exemplo com o foreach:

    <?php
    $nomes = array(5 => "Luciano", 10 => "João", "indice" => "Maria"); // Criamos a matriz definindo seus índices
    foreach( $nomes as $indice => $valor ) {
    echo $indice . " = " . $valor;
    }
    ?>

    ixi, fedeu? Calma lá, o que temos de novo nessa parte? ( $nome as $indice => $valor ), dessa vez, ao invéz de passar somente o valor de cada índice na matriz, estamos passando o nome do índice. Lembrando, a primeir váriavel receberá o nome do índice e a segunda o seu valor.

    Matrizes, basicamente é isso, sua definição e utilização. Vamos passar por algumas funções que envolvem matrizes e dar mais valor à essas pérolas da programação.

    Lá vem bomba... Condicional
    Qual a vantagem de ter um conteúdo dinâmico em seu site se ele não conseguir decidir qual caminho tomar? Vamos ter uma introdução às condicionais agora if else

    <?php
    $nome = "Luciano";

    if( $nome == "Luciano" ) {
    echo "Você realmente é o Luciano";
    }
    ?>

    Como vimos anteriormente, "{" e "}" servem para definir um inicio e um fim a um comando. if estará se perguntando SE o valor da variável $nome for igual à "Luciano". Se sim, o código entre "{" e "}" é executado, caso contrário, nenhuma ação é tomada.

    Outro detalhe é, para definir valores à variáveis, utilizamos "=", para comparar valores "==". E uma terceira opção seria "===", que compara também o tipo da variável, além de seu valor (utilizada para diferenciar 0 de FALSE, por exemplo).

    Agora veremos para não deixar passar em branco nossa condicional, a utilização do comando else:

    <?php
    $idade = 19;
    if( $idade >= 18 ) {
    echo "Maior de idade";
    } else {
    echo "Menor de idade";
    }
    ?>

    Nossa comparação dessa vez não consulta por um valor igual, mas sim, ">=" (maior ou igual). Somente aplicada em números. Caso o valor da variável $idade não seja >= à 18, a instrução else é executada.

    Com isso já é possivel fazer uma pesquisa em uma matriz, por exemplo:

    <?php
    $nomes = array("João", "Maria", "Carlos", "Ana", "Paulo", "Bruna");
    foreach( $nomes as $nome ) {
    if( $nome == "Ana" ) {
    echo "Ana encontrada";
    }
    }
    ?>

    O que temos no script acima? Criamos uma matriz com uma lista de nomes, em seguida, varremos toda a matriz, passando cada valor para a variável $nome. Dentro do loop para cada valor na matriz, verificamos se o valor do $nome é igual à "Ana" se for, apresentamos a mensagem "Ana encontrada".

    Alguns erros comuns nesses casos:

    <?php
    $nomes = array("João", "Maria", "Carlos", "Ana", "Paulo", "Bruna");
    foreach( $nomes as $nome ) {
    if( $nome == "Ana" ) {
    echo "Ana encontrada";
    } else {
    echo "Ana não encontrada";
    }
    }
    ?>

    Não que esse esteja errado, mas provavelmente não trará a saída desejada, pois, repare bem, em cada loop do comando foreach ele executa a condicional, pegamos o primeiro caso, "João", como "João" é diferente de "Ana", ele executa o comando else, apresentando, dessa forma, várias vezes "Ana não encontrada". Para executar da maneira desejada esse script, precisamos de uma variável conhecida pelo nome de flag.

    Pronto, só faltava uma bandeira mesmo no PHP...
    Nada disso, flag é o nome dado à uma variável que tem apenas um valor para comparação, na maioria das vezes TRUE ou FALSE (VERDADEIRO ou FALSO). Vejamos como fica nosso exemplo dessa forma:

    <?php
    $nomes = array("João", "Maria", "Carlos", "Ana", "Paulo", "Bruna");
    $flag = false;
    foreach( $nomes as $nome ) {
    if( $nome == "Ana" ) {
    $flag = true;
    }
    }
    if( $flag ) {
    echo "Ana encontrada";
    } else {
    echo "Ana não encontrada";
    }
    ?>

    Jack?!?!

    Criamos a matriz, definimos nossa $flag como false (falso), pois "Ana" não foi encontrada dentro da matriz ainda, varremos a matriz passando o valor para a variável $nome, se $nome for igual a "Ana" alteramos nossa $flag para true (verdadeiro). Terminando completamente o loop, executamos nossa condicional, repare que não temos realmente uma comparação a ser feita, por que isso? pois na verdade toda comparação retorna TRUE ou FALSE, ex: 1 == 2 FALSE, 5 == 5 TRUE, e assim por diante. Como nossa variável já tem um valor boleano (TRUE ou FALSE), ela mesmo se encarregará de retornar a resposta para o comando if. Se $flag contér TRUE apresentamos "Ana encontrada", caso contrário, "Ana não encontrada".

    Imagine agora, se estivessemos procurando por "João", era uma repetição sem sentido até o final da matriz, já que "João" é o primeiro nome, mas como consigo parar um loop?

    <?php
    $nomes = array("João", "Maria", "Carlos", "Ana", "Paulo", "Bruna");
    $flag = false;
    foreach( $nomes as $nome ) {
    if( $nome == "João" ) {
    $flag = true;
    break;
    }
    }
    if( $flag ) {
    echo "João encontrado";
    } else {
    echo "João não encontrado";
    }
    ?>

    Nossa única diferença, o comando break, que simplesmente corta o loop no momento que for encontrado o nome que procuramos.

    Outras formas de Loop
    Vamos ver algumas outras formas de loop para utilizar não somente em arrays. Vamos para a primeira delas, while:

    <?php
    $contagem = 1;
    while( $contagem <= 10 ) {
    echo $contagem;
    $contagem = $contagem + 1;
    }
    ?>

    O comando while (enquanto) executa determinada função enquanto a sua condicional for verdadeira. Jack, venha cá:

    while( $contagem <= 10 ) => Enquanto contagem for menor ou igual à 10, apresentamos o valor de $contagem no navegador e alteramos o valor de $contagem para $contagem + 1, ou seja, um a mais que o seu valor anterior.

    Sim, muitas vezes vocês vão conseguir fazer os chamados loops infinitos, ou seja, ele vai ficar em execução até estourar o tempo limite do PHP.

    Um exemplo de loop infinito (não execute =D):

    <?php
    $contagem = 1;
    while( $contagem <= 10 ) {
    echo $contagem;
    }
    ?>

    Veja que fazemos praticamente a mesma ação que a acima, mas esquecemos de aumentar o valor da variável $contagem, ou seja, ela sempre terá seu valor igual à 1, nunca passará de 10.

    Outro comando para loop que é disponivel no PHP é o for, que, basicamente, é o mesmo que o while, mas não precisamos controlar nossa contagem, como no exemplo acima.

    <?php
    for( $contagem = 1; $contagem <= 10; $contagem++ ) {
    echo $contagem;
    }
    ?>

    De certa forma mais simples que o while. Sua sintaxe é a seguinta:

    for( INICIALIZACAO; CONDICIONAL; INCREMENTO )

    Ou seja, na primeira parte iniciamos a $contagem, depois fazemos nossa condicional verificando se $contagem é <= à 10 e por último, aumentamos o valor da variável $contagem. Repare que dessa vez, utilizamos $contagem++ para aumentar a variável.

    <?php
    $numero = 5;

    $numero++; // $numero é aumentado em 1
    $numero--; // $numero é diminuido em 1

    $numero += 10; // $numero é aumentado em 10
    $numero -= 10; // $numero é diminuido em 10

    $numero = 5;
    $a = $numero++; // $a recebe $numero (5) e então $numero é aumentado em 1

    $numero = 5;
    $a = ++$numero; // $numero é aumentado em 1 e então passa o novo valor (6) para $a

    $numero = 5;
    $a = $numero--; // $a recebe $numero (5) e então $numero é diminuido em 1

    $numero = 5;
    $a = --$numero; // $numero é diminuido em 1 e então passa o novo valor (4) para $a
    ?>


    Há também outros comandos para loop como do... while / while... do Mas que teria a mesma sintexa do comando while, deixaremos eles de fora por enquanto.

    Ahhhh, acabou
    Exato, infelizmente acabou... Tudo precisa de um começo, um meio e um fim. Bom, estamos quase em 20% Tutorial-PHP para iniciantes Smile Estou preparando outros tutoriais envolvendo funções de maior utilidade para o desenvolvimento de sites, mas espero que esse pequeno tutorial tenha servidor como uma introdução para quem procura aprender mais sobre PHP e as maravilhas que pode fazer com ele.

    Qualquer dúvida, estou inteiramente a disposição para tentar lhe ajudar. Basta "perguntar"


    Quanto à liberdade para apresentar esse tutorial em outros fóruns, sites de download ou qualquer outro site de intuito educacional, sinta-se livre, escrevi esse tutorial pensando em ajudar quem está iniciando em PHP, quanto maior o número de atinguidos, melhor. Peço somente, que me reconheçam como autor dele, beleza então?

      Data/hora atual: Sáb Abr 27, 2024 9:42 am