Go to file
sji 83b437a923 fix wrong @return at \FFI::cdef() 2020-04-29 07:32:28 +09:00
.idea Fix parsing of constants with negative value, add missing constants, fix constant values 2019-09-18 13:59:28 +02:00
Core Fix typos 2020-04-26 17:12:34 +02:00
Ev Add new extensions + fixes for them 2019-09-18 16:39:59 +02:00
FFI fix wrong @return at \FFI::cdef() 2020-04-29 07:32:28 +09:00
PDO Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
Parle Update RParser.php 2019-04-09 02:52:53 +01:00
Phar return type for Phar::compress and Phar::decompress should be static 2020-02-28 16:22:00 +03:00
Reflection Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
SPL Remove unnecessary since tag 2020-02-20 15:31:55 +01:00
SQLite Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
SaxonC Convert links to HTTPS 2018-10-20 20:17:18 +02:00
SimpleXML PHP tags cleanup 2020-03-19 14:48:38 +01:00
SplType Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
Zend OPcache Provide some missing @since tags 2020-01-17 17:44:06 +01:00
ZendCache Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
ZendDebugger WI-33237 split embedded stubs into modules 2017-03-07 14:52:15 +01:00
ZendUtils WI-33237 split embedded stubs into modules 2017-03-07 14:52:15 +01:00
amqp One more missing method in AMQP 2020-04-07 10:44:32 +02:00
apache Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
apcu add ttl to apcu_inc() / apcu_dec() 2020-01-27 19:13:10 +13:00
bcmath Remove "since 7" leftovers 2020-02-11 15:49:00 +01:00
blackfire Add stubs for BlackfireProbe (#764) 2020-03-30 17:36:48 +03:00
bz2 Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
calendar Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
cassandra Fix typos 2020-04-26 17:12:34 +02:00
com_dotnet com_dotnet fix optional parameters 2020-01-05 12:03:17 +01:00
couchbase Fix typos 2020-04-26 17:12:34 +02:00
crypto Fix typos 2020-04-26 17:12:34 +02:00
ctype Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
cubrid @link and @see tags should use https 2018-10-16 11:28:37 +02:00
curl Fix typos 2020-04-26 17:12:34 +02:00
date Fix typos 2020-04-26 17:12:34 +02:00
dba Fix typos 2020-04-26 17:12:34 +02:00
decimal Fix typos 2020-04-26 17:12:34 +02:00
dom Fix typos 2020-04-26 17:12:34 +02:00
enchant Fix some type according to review 2019-07-04 21:01:30 +03:00
event Fix typos 2020-04-26 17:12:34 +02:00
exif Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
expect Add stubs for ext-expect (#761) 2020-03-31 08:37:48 +03:00
fann Add test on unsupported tags 2020-03-19 19:37:47 +01:00
ffmpeg Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
fileinfo Fix typos 2020-04-26 17:12:34 +02:00
filter Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
fpm update since versions in core to make it major 2019-10-31 12:29:32 +03:00
ftp add false types on ftp as documented 2020-01-28 22:25:11 +01:00
gd Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
gearman Fix typos 2020-04-26 17:12:34 +02:00
geoip Fix some type according to review 2019-07-04 21:01:30 +03:00
geos Fix geos stubs 2019-08-26 14:55:04 +02:00
gettext Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
gmagick Fix typos 2020-04-26 17:12:34 +02:00
gmp Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
gnupg PHP tags cleanup 2020-03-19 14:48:38 +01:00
grpc Grpc\ChannelCredentials::createSsl() has all optional parameters. 2019-07-26 12:38:45 -04:00
hash Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
http Fix typos 2020-04-26 17:12:34 +02:00
ibm_db2 Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
iconv Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
igbinary Remove duplicate url scheme inside phpDoc blocks 2018-11-28 17:34:30 +01:00
imagick PHP tags cleanup 2020-03-19 14:48:38 +01:00
imap Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
inotify PHP tags cleanup 2020-03-19 14:48:38 +01:00
interbase Added firebird fbird_* signatures, fixes #WI-51806 (#756) 2020-03-31 09:48:42 +03:00
intl fix: IntlChar::chr and IntlChar::ord returns null (#754) 2020-03-25 11:04:26 +03:00
json Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
judy Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
ldap Fix typos 2020-04-26 17:12:34 +02:00
leveldb renamed folder for leveldb extension to a proper case 2019-05-24 17:53:26 +03:00
libevent Fix typos 2020-04-26 17:12:34 +02:00
libsodium Make PHPDocs PHPDoc parser compatible 2018-04-19 14:22:18 +02:00
libxml Specify array value type in libxml_get_errors (#752) 2020-03-19 16:32:21 +03:00
lua Fix stub for assign method 2019-01-10 02:16:44 +01:00
lzf Added pecl LZF 2019-12-22 18:12:48 +03:00
mailparse Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
mapscript Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
mbstring Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
mcrypt Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
memcache Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
memcached Merge branch 'master' into master 2020-04-24 18:02:32 +08:00
meminfo Add ext-meminfo stub 2019-05-15 19:23:38 +02:00
meta Add doc comments to curl constants (#760) 2020-04-07 00:34:27 +03:00
ming Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
mongo Fix typos 2020-04-26 17:12:34 +02:00
mongodb Fix typos 2020-04-26 17:12:34 +02:00
mosquitto-php Fix typos 2020-04-26 17:12:34 +02:00
mqseries PHP tags cleanup 2020-03-19 14:48:38 +01:00
msgpack Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
mssql Add 7.0 removals 2020-01-22 18:12:36 +01:00
mysql Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
mysql_xdevapi Fix typos 2020-04-26 17:12:34 +02:00
mysqli Fix typos 2020-04-26 17:12:34 +02:00
ncurses Fix typos 2020-04-26 17:12:34 +02:00
newrelic Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
oauth PHP tags cleanup 2020-03-19 14:48:38 +01:00
oci8 Fix typos 2020-04-26 17:12:34 +02:00
odbc Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
openssl Fix typos 2020-04-26 17:12:34 +02:00
parallel Add test on unsupported tags 2020-03-19 19:37:47 +01:00
pcntl PHP tags cleanup 2020-03-19 14:48:38 +01:00
pcov Fixed docblock spacing, added correct version numbers 2019-10-16 11:40:00 +03:00
pcre Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
pdflib @link and @see tags should use https 2018-10-16 11:28:37 +02:00
pdo_ibm WI-33237 split embedded stubs into modules 2017-03-07 14:52:15 +01:00
pdo_mysql WI-33237 split embedded stubs into modules 2017-03-07 14:52:15 +01:00
pdo_pgsql WI-33237 split embedded stubs into modules 2017-03-07 14:52:15 +01:00
pdo_sqlite WI-33237 split embedded stubs into modules 2017-03-07 14:52:15 +01:00
pgsql Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
posix Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
pq Fix typos 2020-04-26 17:12:34 +02:00
pspell Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
pthreads Fix typos 2020-04-26 17:12:34 +02:00
radius Fix typos 2020-04-26 17:12:34 +02:00
rar Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
rdkafka Add missed RdKafka\Producer::flush and purge 2020-04-22 16:43:35 +03:00
readline Fix possible return values from `readline` (#762) 2020-03-20 17:21:36 +03:00
recode Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
redis Merge pull request #788 from xiaoliwang/patch-2 2020-04-27 11:16:48 +02:00
regex Add missing @removed tags for ereg and sybace 2020-01-22 18:34:16 +01:00
rpminfo changed to the correct return values 2020-04-23 11:10:38 +02:00
rrd Fix typos 2020-04-26 17:12:34 +02:00
session Remove "since 7" leftovers 2020-02-11 15:49:00 +01:00
shmop Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
snmp Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
soap Fix typos 2020-04-26 17:12:34 +02:00
sockets Fix typos 2020-04-26 17:12:34 +02:00
sodium Add missing link, throws, and since annotations to the Sodium extension (#759) 2020-03-31 21:07:14 +03:00
solr Fix typos 2020-04-26 17:12:34 +02:00
sqlite3 Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
sqlsrv Add some sqlsrv constants 2020-02-19 19:38:23 +01:00
ssh2 Properly type ssh2_auth_none() return value 2020-01-20 18:33:47 +01:00
standard Merge pull request #786 from gggeek/gggeek/WI-31328 2020-04-28 14:36:34 +02:00
stats Added stubs for PECL "stats" package. 2020-01-24 22:39:46 -08:00
stomp Add stubs for pecl-stomp php extension 2019-04-26 18:08:43 +01:00
suhosin Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
superglobals Don't use bugfix number in deprecation tag 2019-10-02 15:14:57 +02:00
svn Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
sybase Add missing @removed tags for ereg and sybace 2020-01-22 18:34:16 +01:00
sync Fix typos 2020-04-26 17:12:34 +02:00
sysvmsg Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
sysvsem Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
sysvshm Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
tests Remove duplicated since entry 2020-03-20 19:50:13 +01:00
tidy Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
tokenizer Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
uopz @link and @see tags should use https 2018-10-16 11:28:37 +02:00
uuid Add stub for uuid PECL extension 2020-01-29 11:09:55 -08:00
uv Fix typos 2020-04-26 17:12:34 +02:00
v8js Rename V8Js.php to v8js.php 2017-03-09 17:57:33 +02:00
wddx Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
win32service Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
winbinder Fix typos 2020-04-26 17:12:34 +02:00
wincache Fix typos 2020-04-26 17:12:34 +02:00
xcache WI-33237 split embedded stubs into modules 2017-03-07 14:52:15 +01:00
xdebug Update xdebug_stop_code_coverage parameter (#617) 2019-06-17 20:29:18 +03:00
xhprof PHP tags cleanup 2020-03-19 14:48:38 +01:00
xml Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
xmlreader Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
xmlrpc Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
xmlwriter Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
xsl Cleanup @since tags with old versions <5.3 2020-01-22 18:26:13 +01:00
xxtea Stubs for PECL XXTEA 2019-11-06 15:01:57 +03:00
yaf Update yaf_namespace.php 2019-12-13 17:51:59 +08:00
yaml PHP tags cleanup 2020-03-19 14:48:38 +01:00
yar Fix invalid tags 2020-03-20 19:53:17 +01:00
zend Fix typos 2020-04-26 17:12:34 +02:00
zip Fix typos 2020-04-26 17:12:34 +02:00
zlib PHP tags cleanup 2020-03-19 14:48:38 +01:00
zmq @link and @see tags should use https 2018-10-16 11:28:37 +02:00
zookeeper Add stub for zookeeper extension 2019-07-18 21:36:08 +02:00
.gitignore remove quality tools and redundant mapping 2018-12-11 17:35:31 +03:00
.travis.yml update PHP version in travis build 2019-12-09 17:24:58 +03:00
CONTRIBUTING.md Update requirements for PR requests 2018-04-24 17:46:00 +02:00
Dockerfile PHP 7.4 stubs initial support + switch to PHP 7.4 docker image 2019-12-05 17:54:10 +01:00
PhpStormStubsMap.php updated PhPStormStubsMap.php 2020-04-15 23:37:19 +02:00
README.md Update description how to work with custom stubs from IDE 2019-09-11 14:48:49 +02:00
composer.json add test for internal @meta tag. php7.4 migration 2020-01-19 21:23:34 +03:00
docker-compose.yml add tests on ldap extension 2019-08-26 16:53:45 +02:00
generate-stub-map Don't parse the content of vendor 2019-06-25 18:50:58 +02:00

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

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.

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