Skip to content
PHP runtime & extensions header files for PhpStorm
Branch: master
Clone or download
Pull request Compare This branch is 18 commits behind JetBrains:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.idea
Core
Ev
FFI
PDO
Parle
Phar
Reflection
SPL
SQLite
SaxonC
SimpleXML
SplType
Zend OPcache
ZendCache
ZendDebugger
ZendUtils
amqp
apache
apcu
bcmath
bz2
calendar
com_dotnet
couchbase
crypto
ctype
cubrid
curl
date
dba
dom
enchant
event
exif
fann
ffmpeg
fileinfo
filter
fpm
ftp
gd
gearman
geoip
gettext
gmagick
gmp
gnupg
grpc
hash
http
ibm_db2
iconv
igbinary
imagick
imap
inotify
interbase
intl
json
judy
ldap
leveldb
libevent
libsodium
libxml
lua
mailparse
mapscript
mbstring
mcrypt
memcache
memcached
meminfo
meta
ming
mongo
mongodb
mqseries
msgpack
mssql
mysql
mysql_xdevapi
mysqli
ncurses
newrelic
oauth
oci8
odbc
openssl
parallel
pcntl
pcre
pdflib
pdo_ibm
pdo_mysql
pdo_pgsql
pdo_sqlite
pgsql
posix
pspell
pthreads
radius
rar
rdkafka
readline
recode
redis
regex
rrd
session
shmop
snmp
soap
sockets
sodium
solr
sqlite3
sqlsrv
ssh2
standard
stomp
suhosin
superglobals
svn
sybase
sync
sysvmsg
sysvsem
sysvshm
tests
tidy
tokenizer
uopz
uv
v8js
wddx
win32service
wincache
xcache
xdebug
xhprof
xml
xmlreader
xmlrpc
xmlwriter
xsl
yaf
yaml
yar
zend
zip
zlib
zmq
.gitignore
.travis.yml
CONTRIBUTING.md
PhpStormStubsMap.php
README.md
composer.json
docker-compose.yml
generate-stub-map

README.md

phpstorm-stubs

official JetBrains project Build Status License Total Downloads

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.

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).

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.)

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.

Relevant open issues

Contribution process

Contribution process

Updating the IDE

TBD: Have a full copy of the .git repo within an IDE and add it to the project as an external library called "PHP Runtime". It should then be easily updatable both ways via normal git methods.

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.

How to run tests

  1. Execute composer install
  2. Execute docker-compose -f docker-compose.yml run php /opt/project/phpstorm-stubs/vendor/bin/phpunit /opt/project/phpstorm-stubs/tests/

How to update stub map

Execute php generate-stub-map and commit the resulting PhpStormStubsMap.php

License

Apache 2

You can’t perform that action at this time.