O PHP é uma das linguagens mais relevantes no desenvolvimento web, conhecida por sua flexibilidade e capacidade de criar aplicações web de forma rápida. Seja utilizando PHP puro, ou alguns dos frameworks famosos, como Symfony e Laravel, a linguagem tem estado presente desde a década de 1990, desempenhando um papel significativo na Internet até aos dias de hoje.
Com a evolução da linguagem, diversas melhorias foram incorporadas ao longo do tempo. A versão 8 – lançada em 2023 – trouxe novas funções, facilidades na orientação a objetos e tipagens, além de ter introduzido o conceito de JIT (Just-In-Time compilation) ao núcleo da linguagem, aumentando a velocidade de execução.
Como nós, programadores, dizemos, “mais vale uma linha de código do que mil palavras”, por isso vamos a alguns exemplos que podes executar aqui.
Principais novidades do PHP 8
Construtores simples
Agora é possível criar construtores de classes de forma mais simples, eliminando a necessidade de definir variáveis para receber valores. Vê o exemplo abaixo:
class Cliente { public function __construct( private string $nome, private int $idade ) { }}
Função str_contains()
Uma nova função str_contains() facilita a busca de uma string dentro de outra:
Antes:
$haystack = 'How are you?';$needle = 'are';if (strpos($haystack, $needle) !== false) { echo 'true';}
Agora:
$frase = ‘me ache aqui’;echo str_contains($frase, ‘ache’);
Expressão match
A expressão match traz uma implementação mais eficiente do que o switch em alguns casos.
Antes:
switch (8.0) { case '8.0': $result = "Oh no!"; break; case 8.0: $result = "This is what I expected"; break;}echo $result; // Oh no!
Agora:
echo match (8.0) { '8.0' => "Oh no!", 8.0 => "This is what I expected",}; // This is what I expected
Essas são algumas novidades da versão 8.0 da linguagem PHP, o que possibilita aos frameworks do mercado se atualizarem e lançarem diversas features para facilitar a vida dos desenvolvedores PHP, fornecendo mais ferramentas para escrever código.
O que há de novo na versão 8.3
Gostaria ainda de citar a versão 8.3, que foi a última lançada até ao momento da escrita deste artigo. Eis algumas novidades interessantes desta versão:
Nova função para validação de JSON
Antes:
function json_validate(string $string): bool{ json_decode($string); return json_last_error() === JSON_ERROR_NONE;}var_dump(json_validate('{ "test": { "foo": "bar" } }')); // true
Agora:
var_dump(json_validate('{ "test": { "foo": "bar" } }')); // true
Atributo de override na linguagem
Antes:
use PHPUnit\Framework\TestCase;final class MyTest extends TestCase{ protected $logFile; protected function setUp(): void { $this->logFile = fopen('/tmp/logfile', 'w'); } protected function taerDown(): void { fclose($this->logFile); unlink('/tmp/logfile'); }}
Agora:
use PHPUnit\Framework\TestCase;final class MyTest extends TestCase{ protected $logFile; protected function setUp(): void { $this->logFile = fopen('/tmp/logfile', 'w'); } #[\Override] protected function taerDown(): void { fclose($this->logFile); unlink('/tmp/logfile'); }}
Conclusão
O PHP é uma linguagem de programação em constante evolução e é uma ótima opção para desenvolver aplicações web, desde microsserviços até projetos robustos.
A comunidade da linguagem se mantém ativa e sempre empenhada em melhorar a performance e em adicionar novos recursos, o que com certeza irá facilitar a manutenção ou a criação de projetos com o PHP.
Referências:
- PHP 8.3 Release Notes: https://www.php.net/releases/8.3/en.php
- PHP 8.0 Release Notes: https://www.php.net/releases/8.0/en.php
Conhece aqui um dos projetos em que a act digital trabalhou com PHP 8.