2017 © Pedro Peláez
 

library phpstorm-stubs

PHP runtime & extensions header files for PhpStorm

image

jetbrains/phpstorm-stubs

PHP runtime & extensions header files for PhpStorm

  • Monday, July 23, 2018
  • by GeeH
  • Repository
  • 152 Watchers
  • 460 Stars
  • 103,417 Installations
  • PHP
  • 20 Dependents
  • 0 Suggesters
  • 318 Forks
  • 3 Open issues
  • 3 Versions
  • 17 % Grown

The README.md

phpstorm-stubs

official JetBrains project License Total Downloads, (*1)

PhpStorm Stubs Tests PhpStorm Stubs PECL Test PhpStorm Stubs Check Links, (*2)

STUBS are normal, syntactically correct PHP files that contain function & class signatures, constant definitions, etc. for all built-in PHP stuff and most standard extensions. Stubs need to include complete PHPDOC, especially proper @return annotations., (*3)

An IDE needs them for completion, code inspection, type inference, doc popups, etc. Quality of most of these services depend on the quality of the stubs (basically their PHPDOC @annotations)., (*4)

Note that the stubs for “non-standard” extensions are provided as is. (Non-Standard extensions are the ones that are not part of PHP Core or are not Bundled/External - see the complete list here.), (*5)

The support for such “non-standard” stubs is community-driven, and we only validate their PHPDoc. We do not check whether a stub matches the actual extension or whether the provided descriptions are correct., (*6)

Please note that currently there are no tests for the thrown exceptions so @throws tags should be checked manually according to official docs or PHP source code, (*7)

[Relevant open issues], (*8)

Contribution process

Contribution process, (*9)

Updating the IDE

Have a full copy of the .git repo within an IDE and provide its path in Settings | Languages & Frameworks | PHP | PHP Runtime | Advanced settings | Default stubs path. It should then be easily updatable both ways via normal git methods., (*10)

Extensions enabled by default

The set of extensions enabled by default in PhpStorm can change anytime without prior notice. To learn how to view the enabled extensions, look here., (*11)

How to run tests

  1. Execute docker compose -f docker-compose.yml run test_runner composer install --ignore-platform-reqs
  2. Execute docker compose -f docker-compose.yml run -e PHP_VERSION=8.0 test_runner vendor/bin/phpunit --testsuite PHP_8.0

How to update stub map

Execute docker compose -f docker-compose.yml run test_runner /usr/local/bin/php tests/Tools/generate-stub-map and commit the resulting PhpStormStubsMap.php, (*12)

License

Apache 2, (*13)

contains material by the PHP Documentation Group, licensed with CC-BY 3.0, (*14)

The Versions

23/07 2018

dev-master

9999999-dev https://www.jetbrains.com/phpstorm

PHP runtime & extensions header files for PhpStorm

  Sources   Download

Apache-2.0

The Development Requires

code autocomplete type phpstorm jetbrains stubs inspection inference

01/05 2018

dev-pr/117

dev-pr/117

  Sources   Download

25/04 2018

v2018.1.2

2018.1.2.0 https://www.jetbrains.com/phpstorm

PHP runtime & extensions header files for PhpStorm

  Sources   Download

Apache-2.0

The Development Requires

code autocomplete type phpstorm jetbrains stubs inspection inference