PHP Annotated – January 2025 | The PhpStorm Blog (2025)

The IDE that empowers PHP developers

Follow

Download

PHP Annotated – January 2025 | The PhpStorm Blog (2)

Roman Pronskiy

Welcome to the January edition of PHP Annotated! This recap is carefully handcrafted and brings you the most interesting developments in the PHP community over the past couple of months, so you don’t have to sift through the noise, we’ve done it for you.

Highlights

PHP Core

  • RFC: Add persistent curl share handles

    PHP 8.5 will bring a new function curl_share_init_persistent(), which would allow cURL handles to be stored in global memory and reused in subsequent requests.

    Persistence allows PHP scripts to eliminate the overhead of establishing a connection (and DNS lookups, SSL session IDs, etc.) and can improve performance and reliability.

  • RFC: Support Closures in constant expressions

    In PHP 8.5 it will be possible to use closures in previously

    • In attribute parameters,
    • As default values of properties and parameters.
    • Constants and class constants.
    <?phpclass Foo{ public static Closure $callback = static function ($item) { echo "Hello world"; };}function my_array_filter( array $array, Closure $callback = static function ($item) { return !empty($item); },) { // ...}
  • RFC: Attributes on Constants

    Attributes were first introduced in the RFC: Attributes v2. Daniel Scherzer proposes to add support for attributes on compile-time non-class constants.

    #[\MyAttribute]const EXAMPLE = 1;
  • RFC: Error Backtraces v2

    Previously, unlike exceptions, PHP errors did not provide backtraces, which made it difficult to figure out their underlying cause. PHP 8.5 will come with a new ini setting fatal_error_backtraces=1 which will generate detailed error messages and trace for E_ERRORs.

  • 📣 RFC: Records vs. RFC: Data Class vs. RFC: Structs

    Apparently, there is a big interest in the community to add a simple native way of creating Value Objects in PHP.

    Which one would you prefer?

AI

PhpStorm

  • PhpStorm 2024.3 is now available

    The new PhpStorm comes with full PHP 8.4 support, inline AI prompts, Laravel Herd support.

    Support for .env files is now built into PhpStorm. Previously it required installing a separate plugin.

    JetBrains also announced a closed beta for Junie, AI Coding Agent for IDEs.

  • MetaStorm – This plugin allows extending PhpStorm’s behaviour and adding support for your custom frameworks with a few lines in a config file. It unlocks both references and autocompletion at regular places such as method($object,), render(), etc.
  • buggregator/phpstorm-plugin – This plugin works in the pair with buggregator/trap and allows dumping and debugging PHP projects just inside the IDE. Supports VarDumper server, Xhprof profiler, local SMTP server, local Sentry, and much more.

Frameworks

Misc

Conferences

These PHP events are all worth a visit, and some are still accepting presentation proposals:

To find a PHP meetup happening near you, check out the calendar on php.net.

Fun

If you have any interesting or useful links to share via PHP Annotated, please leave a comment on this post or let us know on X/Twitter.

Subscribe to PHP Annotated

PHP Annotated – January 2025 | The PhpStorm Blog (6)

Roman Pronskiy

Developer Advocate at @PhpStorm, Executive Director at @ThePHPFoundation.

Twitter | GitHub

Laravel PHP PHP 8.3 PHP 8.4 PHP Annotated Monthly RFC symfony

  • Share
  • Facebook
  • Twitter
  • Linkedin

Prev post Support for .env Files: Now Built into PhpStormThe State of PHP 2024 Next post

Subscribe to PHP Annotated

PHP Annotated – January 2025 | The PhpStorm Blog (7)

Discover more

JetBrains Xdebug Helper Browser Extension Introducing the official Xdebug Helper extension by JetBrains, ensuring seamless PHP debugging in Chrome. Tania Goral
The State of PHP 2024 Explore trends in the PHP ecosystem based on the State of Developer Ecosystem Report 2024 by JetBrains. Tania Goral
Support for .env Files: Now Built into PhpStorm .env files are widely used to configure applications by storing configuration settings, environment variables, and sensitive information. This eliminates the need to hardcode these values into the application code.Previously, developers using PhpStorm had to manually install the .env Files Suppo… Tania Goral
PhpStorm 2024.3 Is Now Available Support for PHP 8.4, xdebug_notify(), Pest 3.0, and Pest parallel and mutation testing, new features in JetBrains AI Assistant, and more! Hanna Yakush
PHP Annotated – January 2025 | The PhpStorm Blog (2025)
Top Articles
Latest Posts
Recommended Articles
Article information

Author: Mr. See Jast

Last Updated:

Views: 5956

Rating: 4.4 / 5 (75 voted)

Reviews: 82% of readers found this page helpful

Author information

Name: Mr. See Jast

Birthday: 1999-07-30

Address: 8409 Megan Mountain, New Mathew, MT 44997-8193

Phone: +5023589614038

Job: Chief Executive

Hobby: Leather crafting, Flag Football, Candle making, Flying, Poi, Gunsmithing, Swimming

Introduction: My name is Mr. See Jast, I am a open, jolly, gorgeous, courageous, inexpensive, friendly, homely person who loves writing and wants to share my knowledge and understanding with you.