PHP est l'un des langages les plus importants dans le développement web, reconnu pour sa flexibilité et sa capacité à créer rapidement des applications web. Que vous utilisiez du pur PHP ou certains des frameworks célèbres, tels que Symfony et Laravel, le langage existe depuis les années 1990, jouant un rôle significatif sur Internet jusqu'à ce jour.

 

Au fur et à mesure de l'évolution du langage, diverses améliorations ont été incorporées. La version 8 - sortie en 2023 - a apporté de nouvelles fonctions, des facilités pour l'orienté objet et le typage, en plus d'avoir introduit le concept de JIT (compilation Just-In-Time) au cœur du langage, augmentant ainsi la vitesse d'exécution.

Comme nous, développeurs, disons : "une ligne de code vaut mieux que mille mots", alors jetons un coup d'œil à quelques exemples que vous pouvez exécuter ici.

 

Principales nouveauté de PHP 8

Constructeurs simples

Il est désormais possible de créer des constructeurs de classe de manière plus simple, éliminant le besoin de définir des variables pour recevoir des valeurs. Voici un exemple :

class Client {

   public function __construct(

       private string $name,

       private int $age

       ) {

   }

}

 

Fonction str_contains()

Fonction str_contains() Une nouvelle fonction str_contains() facilite la recherche d'une chaîne de caractères à l'intérieur d'une autre :


Avant :

$haystack = 'How are you?';
$needle   = 'are';
if (strpos($haystack, $needle) !== false) {
    echo 'true';
}

Maintenant :

$phrase = 'find me here';
echo str_contains($phrase, 'find');


Expression de correspondance

L'expression de correspondance fournit une implémentation plus efficace que switch, dans certains cas.

 

Avant :

switch (8.0) {
    case '8.0':
        $result = "Oh no!";
        break;
    case 8.0:
        $result = "This is what I expected";
        break;
}
echo $result; // Oh no!

Maintenant :

echo match (8.0) {
    '8.0' => "Oh no!",
    8.0 => "This is what I expected",
}; // This is what I expected

 

Ce sont quelques-unes des nouvelles fonctionnalités de la version 8.0 du langage PHP, qui permettent aux frameworks du marché de se mettre à jour et de publier plusieurs fonctionnalités pour faciliter la vie des développeurs PHP, en fournissant plus d'outils pour écrire du code.

 

Nouveautés de la version 8.3

Je voudrais également mentionner la version 8.3, qui est la dernière version sortie au moment de la rédaction de cet article. Voici quelques nouvelles fonctionnalités intéressantes de cette version :

 

Nouvelle fonction pour la validation JSON

Avant :

function json_validate(string $string): bool
{
    json_decode($string);
    return json_last_error() === JSON_ERROR_NONE;
}
var_dump(json_validate('{ "test": { "foo": "bar" } }')); // true

Maintenant :

var_dump(json_validate('{ "test": { "foo": "bar" } }')); // true

 

Attribut de remplacement de langue

Avant :

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');
    }
}

Maintenant :

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');
    }
}

 

Conclusion

PHP est un langage de programmation en constante évolution et constitue un excellent choix pour le développement d'applications web, des microservices aux projets robustes.

La communauté du langage est active et s'efforce toujours d'améliorer les performances et d'ajouter de nouvelles fonctionnalités, ce qui facilitera certainement la maintenance ou la création de projets avec PHP.

 

Références:

Partager cet article