Começando com PHP

Imagem para Começando com PHP

PhpPostado em  6 min de leitura

Meu primeiro contato com uma linguagem back-end(lado servidor), foi com o PHP 4. E de início não foi com as boas práticas e com certeza não tinha nenhum vestígio de MVC. Com o tempo isso foi mundando, até por utilizar o Zend framework.

O PHP foi criado em 1994, por Rasmus Lerdorf, e o código fonte liberado em 1995. E é mantido pela organização The PHP Group.

PHP (um acrônimo recursivo para "PHP: Hypertext Preprocessor", originalmente Personal Home Page) é uma linguagem interpretada livre, usada originalmente apenas para o desenvolvimento de aplicações presentes e atuantes no lado do servidor, capazes de gerar conteúdo dinâmico na World Wide Web. -- PHP

O ambiente

Primeiramente para conseguirmos ver uma página em PHP funcionando, precisamos ter um servidor Apache/IIS (De preferência um servidor Apache, que muitos sugerem por ser melhor e para URL Rewriting se usa o .htaccess e não o web.config) configurado. Para fazer isso na nossa máquina local, tem softwares que ajudam nessa tarefa. Para windows, temos o XAMPP e o WAMP. Para mac, temos o MAMP. E para o linux, querendo ser mais hardcore, pode seguir esses passos da Digital Ocean para instalação via terminal.

O necessário é ter o Apache e o PHP, instalados na máquina. Provalmente precisará de um banco de dados e isso fica por conta da necessidade do projeto. Querendo instalar manualmente, segue os links abaixo:

Sugestões de banco de dados:

Sintaxe

Já temos o ambiente e agora precisamos escrever nossas primeiras linhas para ver o PHP, funcionando. Pela lógica arquivos PHP, usaram a extensão .php.

Podemos usar as tags HTML, normalmente como fazemos em arquivos de extensão '.html', mas para usarmos o código PHP, o mesmo deverá ser usado como vemos abaixo:

<!DOCTYPE html>
	<html lang="pt-br">
	<head>
		<meta charset="utf-8">
		<title>Document</title>
	</head>
	<body>
		<?php
			// script php
		?>

		<p class="<?php echo imprimirClasse(); ?>">Esse parágrafo tem uma classe inserida via uma função php</p>
	</body>
</html>

Variável

Uma variável no PHP, se inicia com o $(cifrão);

As regras para nomeação, são bem simples:

  • Não iniciar com números
  • Sem espaços
  • Sem caracteres especiais, exceto underscore
<?php
	$name = "Meu nome";
	$age  = 29;
	$account_status  = true;
?>

Constante

Também é possível definir constantes com a função define(). E ela não poderá ser alterado em sua execução. Como boa prática, é sempre boa que seja definida em letras maiúsculas para serem facilmente identificadas.

<?php
	define("VALOR", "Esse é o valor");
	echo VALOR; // Esse é o valor
?>

Echo ou Print

Para imprimir algo na tela, temos a função echo ou print.

//index.php

<?php
	echo "Esse texto vai aparecer na minha página inicial";
	echo("Esse texto vai aparecer na minha página inicial");

	print "Esse texto vai aparecer na minha página inicial";
	print("Esse texto vai aparecer na minha página inicial");

	// Retornará 4 vezes na tela a frase "Esse texto vai aparecer na minha página inicial"
?>

Os 2 fazem a mesma coisa, sendo que a maior diferença fica por conta que o print também retorna 1 e o echo não retorna nada, além do que ele imprime. Podemos ver melhor isso, abaixo:

<?php
    echo print('Teste');
    // Teste1

    $test = print("Teste");
    if ($test) echo 'entrou';
	// Testeentrou
?>

O echo tem um atalho.

<? echo "exemplo" ?>
// É o mesmo que
<?="exemplo" ?>

O print pode ser usado com ternários, já o echo, não.

$test = ($age < 18) ? print('menor') : print('maior'); //válido

$test = ($age < 18) ? echo('menor') : echo('maior'); //inválido,
Parse error: syntax error, unexpected T_ECHO

Utilizando o echo, estará economizando 1 byte e precisando receber um valor de retorno ou utilizar com um ternário, temos o print.

Estruturas condicionais

Temos o famoso if/else e o switch/case. Se já mexeu em outras linguagens de programação, já terá uma familiaridade. Se em um determinado trecho do seu código for necessário ter muitas condições em um mesmo ponto, o mais indicado é o switch/case, para que o seu código não tenha um hadouken. :)

<?php
// if/else
if ([condição]) {
	//seu código aqui
} else {
	//seu código aqui
}

if ([condição]) {
	//seu código aqui
} elseif([outra condição]) {
	//seu código aqui
} else {
	//seu código aqui
}

// swicth/case
$item = 3;

switch ($item) {
    case 1:
        echo "Item 1";
        break;
    case 2:
        echo "Item 2";
        break;
    case 3: // condição
        echo "Item 3";  // código que será executado
        break; // Finaliza a execução
    case 4:
        echo "Item 4";
        break;
    case 5:
        echo "Item 5";
        break;
    default:
        echo "Nenhum item";
        break;
}
?>

No caso do if/else, se nenhuma condição for atendida, sempre o código contido no else, será executado. No caso do switch/case, se nenhuma condição for atendida, o default, será executado.

Loops

São os laços de repetição que podemos executar, usando: for, while, do while e foreach.

  • for - Executa 3 operações (A primeira antes de executar a condição, onde podemos definir as variáveis que serão utilizadas. A segunda é a condição. E a terceira, o que fará se a condição for verdadeira.)
  • while - Só executamos uma operação que é a condição. Sendo verdadeira, executa o código.
  • do while - Ao contrário do while, primeiro executa o código para depois testar a condição. Como podemos ver no exemplo abaixo (que não faz sentido, apenas para exemplo), que ele executa o código, mesmo a condição sendo falsa.
  • foreach - Simplifica o trabalho com um array. Executando de acordo com a quantidade de posições do array, sem precisar informar. E já nos informa de uma vez, a chave e valor da posição.
<?php
for ($i=0, $len = 5; $i < len; $i++) {
    echo $i;
}
// 01234

$value = 1;
$max = 5;
while ($value <= $max) {
	echo $value;
	$value++;
}
// 12345

$count = 1;
do{
    echo "Loop número $count";
} while ($count < 1);
// Loop número 1

$alpha = array('a', 'b', 'c', 'd');
foreach ($alpha as $key => $value) {
    echo $key." - ".$value."<br />";
}
// 0 - a
// 1 - b
// 2 - c
// 3 - d
?>

Observações

  1. Para concatenarmos no PHP, usamos . .
//index.php

<?php
	echo "Esse texto vai aparecer na minha página inicial. " . "E esse texto também.";
?>
  1. Uma coisa muito importante no PHP, é sempre usar o ;, após uma declaração. Você pode estar familiarizado com isso no CSS e no Javascript.
//index.php

<?php
	// sem
	define('PHP', 'de boas') echo PHP
	//Parse error: syntax error, unexpected T_ECHO

	// com
	define('PHP', 'de boas'); echo PHP;
	// de boas
?>
  1. Podemos interferir no processo normal de um loop. Duas palavrinhas mágicas: break e continue. Como podemos ver abaixo, com o break, ele interrompe o processo quando a condição permite a execução do mesmo. No caso do continue, quando a condição é verdadeira e o mesmo é executado, ele vai para o próximo loop, não imprimindo o '0 - a'.
// break
$alpha = array('a', 'b', 'c', 'd');
foreach ($alpha as $key => $value) {
    echo $key." - ".$value."<br />";
    if($value === 'b') {
    	echo "Parei na letra ".$value;
    	break;
    }
}
// 0 - a
// 1 - b
// Parei na letra b

// continue

$alpha = array('a', 'b', 'c', 'd');
foreach ($alpha as $key => $value) {
    if ($value === 'a') continue;
    echo $key." - ".$value."<br />";
}
// 1 - b
// 2 - c
// 3 - d

Conclusão

Essa foi uma pequena introdução ao PHP, nos próximos artigos mostrarei mais sobre a linguagem, frameworks e etc.