1 - Conceitos e introdução
Aula 01 a 03 - O que é PHP? / Front-End vs Back-End / Servidor
Apache
Introdução ao PHP, diferenças entre Front-End e Back-End e
introdução ao servidor Apache.

2 - Configurando Servidor Local e Ferramentas
Aula 01 a 02 - Instalando e configurando editor de código /
Instalando e configurando servidor local
Instalação do
Sublime Text.
Instalação do XAMPP e demostração dos arquivos de configuração httpd.conf e php.ini

Instalação do XAMPP e demostração dos arquivos de configuração httpd.conf e php.ini
3 - Domínio, Hospedagem e Servidor Externo
Aula 01 a 03 - Configurando hospedagem e servidor externo /
Transferindo e gerenciando arquivos / Revisando e aplicando na
prática
Criando um domínio e iniciando um site na
Hostgator.
Configurações fundamentais do cPanel.
Instalando o gerenciador de FTP FileZilla.

Instalando o gerenciador de FTP FileZilla.
4 - Lógica de Programação e Algoritmos
Aula 01 a 03 - Lógica de programação / Criando algoritmos / Mais
de algoritmos
Fundamentos de lógica de programação, criação de algoritmos com
pseudo-código.

5 - PHP Básico
Aula 01 - Printar mesagens na tela
Abrindo uma execução em PHP com <?php
código ?>
Utilizando o comando echo para apresentar strings na tela.

Utilizando o comando echo para apresentar strings na tela.
Aula 02 - Variáveis do PHP
Conhecendo a variável global $_SERVER para conhecer o
status do servidor e o comando print_r() para imprimir
valores de arrays.

Aula 03 - Criando variáveis
Declarando variáveis no PHP com o operador $. Tipos de
variáveis string e numéricas.

Aula 04 - Mais sobre variáveis e tipos de variáveis
Variáveis do tipo string, numero, boolean e
double. Concatenação com o ' . '.

Aula 05 - Constantes
Para declarar constantes devemos utilizar o operador
define('NOME_CONSTANTE', 'valor_constante'). Por padrão o
nome das constantes é escrito em letrar maiúsculas.
Também podemos declarar uma constante utilizando a palavra const (aplicável a objetos).

Também podemos declarar uma constante utilizando a palavra const (aplicável a objetos).
Aula 06 - Arrays
Podemos criar array de várias formas. A primeira é utilizando o
comando
array(valor1, valor2,...,valorn).
A segunda é indicando o símbolo de array '[]' após o nome da variável: $array[] = 'valor';. Nesse caso o índice é sequencial, porém podemos passar o valor do índice dentro dos colchetes, sendo que esse valor pode inclusive ser uma string.
A forma mais moderna é criando o array diretamente atribuida à variável: $array = [valor1, valor2,....valorn].
Para acessar os valores do array devemos utilizar o echo $array[indice]. Para consultar todo o conteúdo de uma array utilizamos o comando print_r().

A segunda é indicando o símbolo de array '[]' após o nome da variável: $array[] = 'valor';. Nesse caso o índice é sequencial, porém podemos passar o valor do índice dentro dos colchetes, sendo que esse valor pode inclusive ser uma string.
A forma mais moderna é criando o array diretamente atribuida à variável: $array = [valor1, valor2,....valorn].
Para acessar os valores do array devemos utilizar o echo $array[indice]. Para consultar todo o conteúdo de uma array utilizamos o comando print_r().
Aula 07 - Concatenação
Fazemos a concatenção em PHP utilizando o operador ' . '. Podemos
concatenar quaisquer elementos (strings, variáveis, constantes,
etc.). Quando utilizamos " " podemos declarar as variáveis
diretamente misturando strings e variáveis. Só precisamos estar
atentos com a utilização de aspas simples e aspas duplas. Em
alguns casos podemos utilizar a '\' como escape para
utilizar aspas dentro de aspas.
Note que as constantes não são lidas sem a concatenação por ' . '.

Note que as constantes não são lidas sem a concatenação por ' . '.
Aula 08 - Operações matemáticas
Operadores matemáticos básicos (+, -, * , /, %) e precedencia de
operadores.

Aula 10 - Operadores
Operadores de atribuição '=', semelhante '==' e identico '===' e
seus opostos '!=' e '!=='.

Aula 11 - Operadores matemáticos e lógica
Operadores de comparação '<', '>', '<=', '>=' e
operadores lógicos '&&' e '||'.

6 - PHP Intermediário
Aula 01 - Foreach e for para arrays
Utilizando os operadores foreach() e for() para
percorrer um array.
A sintaxe do foreach() é:
Quando não utilizamos o índice sequencial no array o loop for não é possível.

A sintaxe do foreach() é:
foreach($nome_do_array, $chave => $valor){
código
}
Para o loop for() precisamos verificar a quantidade de
índices do array com o método count(nome_do_array).
código
}
Quando não utilizamos o índice sequencial no array o loop for não é possível.
$array = ['Jean', 'Andreza', 'Natalina', 'Tom', 'Fe'];
foreach ($array as $key => $value) {
echo $key . ' - ' . $value . '<br>';
}
for ($i = 0; $i < count($array); $i++) {
echo $i . ' - ' . $array[$i] . '<br>';
}
$array2 = ['nome1' => 'Jean', 'nome2' => 'Andreza', 'nome3' => 'Natalina'];
foreach ($array2 as $key => $value) {
echo $key . ' - ' . $value . '<br>';
}
for ($i = 0; $i < count($array2); $i++) {
echo $i . ' - ' . $array2[$i] . '<br>';
}
No exemplo acima o último loop for retorna erro.
foreach ($array as $key => $value) {
echo $key . ' - ' . $value . '<br>';
}
for ($i = 0; $i < count($array); $i++) {
echo $i . ' - ' . $array[$i] . '<br>';
}
$array2 = ['nome1' => 'Jean', 'nome2' => 'Andreza', 'nome3' => 'Natalina'];
foreach ($array2 as $key => $value) {
echo $key . ' - ' . $value . '<br>';
}
for ($i = 0; $i < count($array2); $i++) {
echo $i . ' - ' . $array2[$i] . '<br>';
}
No exemplo acima o último loop for retorna erro.
Aula 02 - Array multidimensional
Criação de arrays multidimensionais (array de arrays) e consulta
pelos indices.

$arr2 = array(array('jean', 'andreza'), array(48, 41));
echo $arr2[1][0];
print_r($arr2);
echo $arr2[1][0];
print_r($arr2);
Aula 03 - Die e sleep
A função sleep(t) faz um retardo na execução do código
pelo servidor. O tempo (t) é em segundos. Podemos incluir mais de
uma vez essa função, porém em alguns casos ele pode somar o tempo
de execução e retornar os dados de uma só vez (respeitando o tempo
total de todas as funções).
A função die() encerra a execução do código no momento de sua chamada. Podemos enviar mensagens como parâmetro nessa função para informar a parada da execução do código.

A função die() encerra a execução do código no momento de sua chamada. Podemos enviar mensagens como parâmetro nessa função para informar a parada da execução do código.
Aula 04 - Entendendo funções nativas e criando funções
Como criar funções. Incluir parametros em funções e definir
valores padrão para os parametros na declaração da função.
O return em funções.

O return em funções.
Aula 05 - Utilizando include e date
Entre as funções padrão do PHP estão a função date().
Essa função apresenta a hora atual na tela ou outras opções conforme os parâmetros definidos.
Por padrão o horário é definido no padrão GMT 0:00. Para definirmos outro fuso horário devemos utilizar a função date_default_timezone_set('America/Sao_Paulo'); (nesse caso para o nosso fuso horário). Para outras localidades consultar a documentação PHP Documentation.
Podemos adicionar nos parametros da função date() a função time() e realizar operações matemáticas para, por exemplo, alterar o horário apresentado:

Essa função apresenta a hora atual na tela ou outras opções conforme os parâmetros definidos.
Por padrão o horário é definido no padrão GMT 0:00. Para definirmos outro fuso horário devemos utilizar a função date_default_timezone_set('America/Sao_Paulo'); (nesse caso para o nosso fuso horário). Para outras localidades consultar a documentação PHP Documentation.
Podemos adicionar nos parametros da função date() a função time() e realizar operações matemáticas para, por exemplo, alterar o horário apresentado:
date_default_timezone_set('America/Sao_Paulo');
setlocale(LC_ALL, 'Portuguese_Brazilian');
$data = date('d/m/Y - H:i');
echo $data;
$dataAmanha = date('d/m/Y - H:i', time() + (60 * 60 * 24));
echo $dataAmanha;
Outra função é a include() que permite incluir arquivos
dinamicamente em outros arquivos PHP.
setlocale(LC_ALL, 'Portuguese_Brazilian');
$data = date('d/m/Y - H:i');
echo $data;
$dataAmanha = date('d/m/Y - H:i', time() + (60 * 60 * 24));
echo $dataAmanha;
Aula 06 - Funções para strings
Algumas das funções para trabalhar com strings:
substr(string, valor_inicial, valor_final): recorta partes de uma string de acordo com o indice inicial e final.
explode('caractere', string): divide a string a partir do caractere selecionado.
implode('caractere', string): junta um array de strings em uma string única incluindo o caractere definido (o caractere pode ser omitido).
striptags(): remove conteudos de tags html das strings.
htmlentities(): mostra as tags html caso sejam digitadas.

substr(string, valor_inicial, valor_final): recorta partes de uma string de acordo com o indice inicial e final.
explode('caractere', string): divide a string a partir do caractere selecionado.
implode('caractere', string): junta um array de strings em uma string única incluindo o caractere definido (o caractere pode ser omitido).
striptags(): remove conteudos de tags html das strings.
htmlentities(): mostra as tags html caso sejam digitadas.
$conteudo = 'Lorem ipsum dolor sit amet consectetur
adipisicing elit. Animi architecto molestias sint at culpa
possimus. Alias perspiciatis pariatur qui voluptatum itaque,
quis officia blanditiis. Fugit consequatur animi voluptas.
Eius, error.';
echo substr($conteudo, 0, 20);
$nome = 'Jean Marcel Fiad';
$nomes = explode(' ', $nome);
print_r($nomes);
$nomes = implode('*', $nomes);
echo $nomes;
$conteudo = '<h1>Jean</h1>Outra coisa';
echo $conteudo;
echo strip_tags($conteudo);
$html = '<div></div>';
echo $html;
echo htmlentities($html);
echo substr($conteudo, 0, 20);
$nome = 'Jean Marcel Fiad';
$nomes = explode(' ', $nome);
print_r($nomes);
$nomes = implode('*', $nomes);
echo $nomes;
$conteudo = '<h1>Jean</h1>Outra coisa';
echo $conteudo;
echo strip_tags($conteudo);
$html = '<div></div>';
echo $html;
echo htmlentities($html);
Aula 07 - Switch, continue e break
Utilização da condicional switch() e explicação sobre o
break.
Utilização do continue.

Utilização do continue.
Aula 08 - Funções para manipular arrays
Algumas funções para arrays:
array_merge(arr1, arr2,...,arrn): mescla 2 ou mais arrays e em casos em que temos um índice definido sobreescreve com o último valor.
array_intersect_key(): retorna os valores do primeiro array declarado que tem chaves (ou índices) comuns a todos os arrays selecionados.
array_map(callback, array): executa a função de callback para cada elemento do array. Pode ser uma função anonima ou uma função nominada (inclusive funções padrão).

array_merge(arr1, arr2,...,arrn): mescla 2 ou mais arrays e em casos em que temos um índice definido sobreescreve com o último valor.
array_intersect_key(): retorna os valores do primeiro array declarado que tem chaves (ou índices) comuns a todos os arrays selecionados.
array_map(callback, array): executa a função de callback para cada elemento do array. Pode ser uma função anonima ou uma função nominada (inclusive funções padrão).
$array1 = array('cor' => 'vermelho', 2, 4);
$array2 = array('a', 'b', 'cor' => 'verde', 'forma' => 'trapezoide', 4);
$array3 = array('c', 'd', 'cor' => 'amarelo', 'forma' => 'circulo', 4);
$array4 = array(2);
$result = array_merge($array1, $array2, $array3);
print_r(($array1));
print_r(($array2));
print_r(($array3));
print_r(($result));
$result2 = array_intersect_key($array2, $array3, $array1);
print_r($result2);
$result3 = array_map(function ($data) {
echo $data . '<br>';
}, $array1);
$array5 = array("<p>jean</p>", 'andreza', '<p>tom</p>', 'fernando');
print_r($array5);
print_r(array_map('strip_tags', $array5));
$array2 = array('a', 'b', 'cor' => 'verde', 'forma' => 'trapezoide', 4);
$array3 = array('c', 'd', 'cor' => 'amarelo', 'forma' => 'circulo', 4);
$array4 = array(2);
$result = array_merge($array1, $array2, $array3);
print_r(($array1));
print_r(($array2));
print_r(($array3));
print_r(($result));
$result2 = array_intersect_key($array2, $array3, $array1);
print_r($result2);
$result3 = array_map(function ($data) {
echo $data . '<br>';
}, $array1);
$array5 = array("<p>jean</p>", 'andreza', '<p>tom</p>', 'fernando');
print_r($array5);
print_r(array_map('strip_tags', $array5));
Aula 09 - Formulários, GET e POST
Vamos utilizar os métodos GET e POST para
manipulação de dados de formulários.
A variável global $_GET recupera o valor do formulário e pode atribui-lo em variáveis.
Quando utilizamos esse método diretamente vamos receber uma mensagem de alerta sempre que acessamos a página pois no primeiro acesso os dados da URL não estão preenchidos.
Para resolver isso podemos colocar o caractere @ antes da variável $_GET para ocultar os warnings.
A outra forma é utilizar um condicional e a função isset() para verificar se a variável $_GET está setada.
Podemos fazer o mesmo para o método POST utilizando a variável $_POST. Essa variável tem a mesma forma de utilização que com o método GET mas precisamos definir esse método na tag do formulário.
Essas variáveis podem ser utilizadas com qualquer tipo de tag de input.
Quando utilizamos inputs do tipo checkbox que permitem mais de um valor devemos identificar o atributo name do elemento como um array. Dessa forma o valor é atribuido a variável $_POST como um array.

A variável global $_GET recupera o valor do formulário e pode atribui-lo em variáveis.
Quando utilizamos esse método diretamente vamos receber uma mensagem de alerta sempre que acessamos a página pois no primeiro acesso os dados da URL não estão preenchidos.
Para resolver isso podemos colocar o caractere @ antes da variável $_GET para ocultar os warnings.
$nome = @$_GET['nome'];
$email = @$_GET['email'];
$email = @$_GET['email'];
A outra forma é utilizar um condicional e a função isset() para verificar se a variável $_GET está setada.
Podemos fazer o mesmo para o método POST utilizando a variável $_POST. Essa variável tem a mesma forma de utilização que com o método GET mas precisamos definir esse método na tag do formulário.
Essas variáveis podem ser utilizadas com qualquer tipo de tag de input.
Quando utilizamos inputs do tipo checkbox que permitem mais de um valor devemos identificar o atributo name do elemento como um array. Dessa forma o valor é atribuido a variável $_POST como um array.
if (isset($_POST['acao4'])) {
echo $_POST['nome3'];
print_r($_POST['valor']);
foreach ($_POST['valor'] as $key => $value) {
echo $value;
}
}
<form action="" method="POST">
<label for="">Select Name</label>
<select name="nome3" id="">
<option value="Jean">Jean</option>
<option value="Andreza">Andreza</option>
<option value="Tom">Tom</option>
<option value="Fernando">Fernando</option>
</select>
<input type="checkbox" name="valor[]" id="" value="10">10
<input type="checkbox" name="valor[]" id="" value="20">20
<input type="checkbox" name="valor[]" id="" value="30">30
<input type="checkbox" name="valor[]" id="" value="40">40
<input type="submit" name="acao4" value="Enviar">
</form>
echo $_POST['nome3'];
print_r($_POST['valor']);
foreach ($_POST['valor'] as $key => $value) {
echo $value;
}
}
<form action="" method="POST">
<label for="">Select Name</label>
<select name="nome3" id="">
<option value="Jean">Jean</option>
<option value="Andreza">Andreza</option>
<option value="Tom">Tom</option>
<option value="Fernando">Fernando</option>
</select>
<input type="checkbox" name="valor[]" id="" value="10">10
<input type="checkbox" name="valor[]" id="" value="20">20
<input type="checkbox" name="valor[]" id="" value="30">30
<input type="checkbox" name="valor[]" id="" value="40">40
<input type="submit" name="acao4" value="Enviar">
</form>
Aula 10 - Sessões e cookies
Quando criamos sessões armazenamos variáveis no navegador
que permitem que mesmo que o ususário saia da página podemos
voltar a ter acesso a ela.
Já com os cookies podemos manter essas variáveis até uma data de expiração definida.
Para iniciar uma sessão devemos criar em todas as páginas que dependem dela a sessão com a função session_start().
Iniciada a sessão devemos atribuir o valor da sessão na variável $_SESSION['nome_variavel'].
Uma vez inicada essa sessão pode ser acessada em qualquer página (que tenha sido iniciada).
Podemos limpar o valor da sessão com a função unset($_SESSION['nome_variavel']). Essa função limpa o valor da variável da sessão.
Para criar um cookie utilizamo a função setcookie('nome_do_cookie', 'valor_do_cookie', tempo_validade(em segundos), path_validade). Para remover um cookie não há um método específico. Podemos faze-lo setando um tempo de vida negativo para ele.

Já com os cookies podemos manter essas variáveis até uma data de expiração definida.
Para iniciar uma sessão devemos criar em todas as páginas que dependem dela a sessão com a função session_start().
Iniciada a sessão devemos atribuir o valor da sessão na variável $_SESSION['nome_variavel'].
Uma vez inicada essa sessão pode ser acessada em qualquer página (que tenha sido iniciada).
session_start();
$_SESSION['nome'] = 'Jean';
Para encerrar uma sessão podemos atribuir um valor vazio para a
variável $_SESSION['nome_variavel'], entretanto nesse
caso não encerramos a sessão, apenas alteramos o valor da
variável. $_SESSION['nome'] = 'Jean';
Podemos limpar o valor da sessão com a função unset($_SESSION['nome_variavel']). Essa função limpa o valor da variável da sessão.
session_start();
unset($_SESSION['nome']);
Para limpar a sessão podemos utilizar também a função
session_destroy(). unset($_SESSION['nome']);
Para criar um cookie utilizamo a função setcookie('nome_do_cookie', 'valor_do_cookie', tempo_validade(em segundos), path_validade). Para remover um cookie não há um método específico. Podemos faze-lo setando um tempo de vida negativo para ele.
setcookie('nome2', 'Jean2', time() + (60 * 60 * 24),
'/');
Aula 11 - Sintaxe alternativa no PHP
Utilizando uma sintaxe diferente para os loops e condicionais.
Nesse caso ao invés de utilizar as { } utilizamos o ':' e ao final
do código o operador 'end + nome do operador' (if...endif,
while...endwhile, etc...).

1 - Conceitos e introdução
Aula 1 a 3 - O que é PHP? / Front-End vs Back-End / Servidor
Apache
Introdução ao PHP, diferenças entre Front-End e Back-End e
introdução ao servidor Apache.
