urgent php

Urgent PHP #3: TrueAsync, Function Autoloading, Structs in PHP??

· Summarized

Share this episode
Anyone with this link can open it.
Share Link
Start at 0:00

Key takeaways

  • The PHP community continues to explore advanced features like async/await, generics, and structs, but integrating these into core PHP remains challenging due to community governance and scope.
  • Developers see value in a layered approach where PHP evolves gradually while maintaining backwards compatibility, or even considering a new language built on top of or alongside PHP.
  • A modern PHP dev setup involves high-spec hardware, a selection of IDEs like PHPStorm, and AI tools to automate repetitive coding tasks. Understanding and ownership of code remain crucial amidst AI-assisted development.
  • Supporting the latest PHP versions is vital for security and performance, but many open-source packages still cling to unsupported older versions. The community should prioritize updating and modernizing support.
  • Community events like Laracon US and ongoing conferences are key for staying ahead, sharing knowledge, and driving PHP development further. Upcoming PHP releases will introduce significant features that will impact the ecosystem.

Summary

PHP Feature Discussions and Community Proposals

The episode delves into major PHP development topics, particularly the status and future of features like TrueAsync (async/await), generics, and structs. The hosts discuss the current efforts around these features, the challenges they face within the PHP community, and the governance structures that influence language evolution. They highlight that while some projects like TrueAsync show promise, their integration into core PHP faces significant obstacles due to the complexity and the PHP internals process. The conversation emphasizes the necessity of incremental improvements and the potential benefits of a 'PHP superset' or new language that is backward-compatible, akin to TypeScript for JavaScript.

Development Setup and Workflow 2026

Brent and Brand share their ideal development environments for 2026, including hardware specifications, IDE choices, and AI tools. Brent's setup includes a high-memory MacBook M4 Max, Ghostly terminal, and JetBrains Mono font, with a mix of PHPStorm and Sublime Text for development, and integration of AI tools like GPT models for automating repetitive tasks. They discuss balancing AI assistance with maintaining code understanding and ownership, stressing the importance of readable code and developer skills. The episode also touches on preferences for Light Mode over Dark Mode, browser choices, and the desire for lightweight IDEs for efficient coding.

PHP Version Support and Package Ecosystem

The hosts examine PHP version adoption trends, emphasizing the importance of moving towards supporting newer PHP versions like 8.2 and above. They analyze data from the PHP community, noting that a significant portion of packages still support unsupported older PHP versions like 7.4. The discussion advocates for the open-source community to push for more regular PHP updates to improve security, performance, and modern syntax adoption. They highlight ongoing efforts like PHP version stats, the importance of automatic updates, and the role of major frameworks like Laravel and Symfony in setting standards.

Tools, Standards, and Community Events

The episode mentions various tools and standards for PHP development, including code style guides, testing frameworks, and package managers. Brent notes that PHP community projects like Pint are trending, while also stressing the importance of supporting well-established tools like PHPUnit and Laravel. They promote upcoming community events, such as Laracon US, and discuss the significance of conferences for networking and sharing advancements. The hosts share their enthusiasm for upcoming PHP-related releases, like PHP 8.4 and PHP 8.5, and key features coming in PHP 8.4 supported by the latest frameworks.

Sponsors

  • JetBrains · Brent Rose from JetBrains

Follow this show on AudioBrevity and new episodes get summarized for you. Create a free account

Couldn't load the audio. A blocker may be stopping the show's tracking links. Open the file