Écrire une extension PHP en 2022, quand on ne maîtrise pas forcément le C peut-être un parcours du combattant. Quand on vient du langage PHP, les concepts de gestion de mémoire et les bugs associés (use after free par exemple) sont lointains et peuvent nous conduire à des failles de sécurité importantes. En plus de cela, nous devons aussi absorber l'utilisation de l'API de Zend Engine. J'ai découvert Rust, il y a peu de temps : un langage qui garantit fiabilité, performance, productivité et surtout permettant d'ouvrir une passerelle vers le C. Voyons voir si l'expérience serait plus heureuse avec ce langage.

On commencera par faire un tour de l'état de l'art des extensions PHP et pourquoi Rust. On utilisera aussi la crate Rust ext-php-rs et voir comment wrapper des API Rust pour ainsi les proposer côté utilisateur PHP. On terminera sur comment automatiser la distribution de notre extension et enfin, conclure sur la valeur ajoutée.

Comments

Please login to leave a comment