Home / Companies / LogRocket / Blog / Post Details
Content Deep Dive

Including both PHP 7.1 and 8.0 code in the same plugin … or not?

Blog post from LogRocket

Post Details
Company
Date Published
Author
Leonardo Losoviz
Word Count
3,009
Language
-
Hacker News Points
-
Summary

The author discusses the challenges and potential solutions associated with transpiling PHP code, specifically transforming a WordPress plugin from PHP 8.0 to 7.1 to ensure compatibility with legacy systems. While transpiling allows the use of advanced PHP features like typed properties and union types, it introduces issues such as needing method signatures to match PHP 7.1, outdated documentation requirements, and debugging difficulties due to discrepancies between transpiled and source code. Proposed solutions include releasing two versions of the plugin or incorporating both PHP versions within a single plugin to determine which code to use at runtime. However, these approaches have drawbacks, such as increased complexity and potential user confusion, especially for plugins that are extendable by third parties. Ultimately, although the author finds value in transpiling for maintaining code quality, they acknowledge the limitations and are still searching for a comprehensive solution.