Go to file
Artemy Pestretsov ea4d53c2d4 Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
.idea Fix path to PHPUnit 2019-06-25 17:09:16 +02:00
Core Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
Ev Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
FFI Add ffi extension support 2019-02-13 02:48:00 +03:00
PDO Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
Parle Update RParser.php 2019-04-09 02:52:53 +01:00
Phar Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
Reflection Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
SPL Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
SQLite Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
SaxonC Convert links to HTTPS 2018-10-20 20:17:18 +02:00
SimpleXML Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
SplType Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
Zend OPcache Add hand-picked changes from pr553 2019-06-26 15:26:31 +03: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 Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
apache @link and @see tags should use https 2018-10-16 11:28:37 +02:00
apcu Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
bcmath Update various @return's in bcmath based on PR feedback 2018-10-30 08:35:17 -05:00
bz2 Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
calendar Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
com_dotnet added missing com_exception to com_dotnet stub 2019-05-10 14:40:50 +01:00
couchbase Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
crypto Fix default value for parameter to be compatible with PHP 2019-06-14 15:20:01 +02:00
ctype Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
cubrid @link and @see tags should use https 2018-10-16 11:28:37 +02:00
curl Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
date Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
dba Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
dom Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
enchant Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
event Change all other links available in HTTPS 2018-10-16 12:12:15 +02:00
exif Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
fann Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
ffmpeg Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
fileinfo Replace http with https in doc links 2018-08-13 16:39:18 +03:00
filter Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
fpm Fix missing return type of fpm_get_status() function 2018-12-17 09:38:54 +01:00
ftp Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
gd Remove duplicated constants 2019-06-26 12:41:26 +02:00
gearman Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
geoip Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
gettext Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
gmagick Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
gmp Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
gnupg Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
grpc Change all other links available in HTTPS 2018-10-16 12:12:15 +02:00
hash Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
http Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
ibm_db2 Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
iconv [+]: fix iconv phpdoc for return 2019-01-07 09:45:13 +01:00
igbinary Remove duplicate url scheme inside phpDoc blocks 2018-11-28 17:34:30 +01:00
imagick Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
imap Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
inotify Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
interbase Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
intl Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
json Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
judy Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
ldap Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
leveldb renamed folder for leveldb extension to a proper case 2019-05-24 17:53:26 +03:00
libevent Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
libsodium Make PHPDocs PHPDoc parser compatible 2018-04-19 14:22:18 +02:00
libxml Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
lua Fix stub for assign method 2019-01-10 02:16:44 +01: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 Add PhpDoc for MB_CASE_ constants since PHP 7.3 2019-03-29 19:24:26 +01:00
mcrypt Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
memcache Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
memcached Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
meminfo Add ext-meminfo stub 2019-05-15 19:23:38 +02:00
meta Update .phpstorm.meta to reflect removal of apc extension 2019-06-26 12:51:08 +02:00
ming Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
mongo Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
mongodb Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
mqseries moved fann, judy, mqseries to separate directories 2017-07-17 21:50:35 +03:00
msgpack Add msgpack extension stubs 2018-12-03 16:08:08 +01:00
mssql Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
mysql Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
mysql_xdevapi @link and @see tags should use https 2018-10-16 11:28:37 +02:00
mysqli Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
ncurses Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
newrelic Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
oauth Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
oci8 Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
odbc Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
openssl Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
parallel Remove unused imports 2019-06-20 14:03:20 +02:00
pcntl Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
pcre PHP 7.3 stubs update 2018-12-24 18:24:48 +03: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 Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
posix Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
pspell Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
pthreads Add pthreads stubs for addRef/delRef/getRefCount functions for Threaded class 2018-11-01 05:42:49 -05:00
radius Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
rar Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
rdkafka Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
readline Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
recode Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
redis Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
regex Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
rrd Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
session add default args to session_set_save_handler 2019-02-22 19:25:50 +11:00
shmop Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
snmp Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
soap fixing __soapCall() method signature (#619) 2019-06-20 01:52:46 +03:00
sockets Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
sodium Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
solr Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
sqlite3 Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
sqlsrv Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
ssh2 Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
standard Add hand-picked changes from pr553 2019-06-26 15:26:31 +03: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 Change all other links available in HTTPS 2018-10-16 12:12:15 +02:00
svn Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
sybase Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
sync Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
sysvmsg Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
sysvsem Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
sysvshm Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
tests Fix constant namespace extraction 2019-06-26 12:41:03 +02:00
tidy Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
tokenizer Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
uopz @link and @see tags should use https 2018-10-16 11:28:37 +02:00
uv Fix UV stubs to be compatible with PHP 7 2019-06-14 14:57:59 +02:00
v8js Rename V8Js.php to v8js.php 2017-03-09 17:57:33 +02:00
wddx Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
win32service Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
wincache Add hand-picked changes from pr553 2019-06-26 15:26:31 +03: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 @link and @see tags should use https 2018-10-16 11:28:37 +02:00
xml Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
xmlreader Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
xmlrpc xmlrpc_server_register_method: use callable type 2019-05-14 13:24:56 +03:00
xmlwriter Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
xsl Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
yaf Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
yaml Fixed signature of yaml_emit() 2019-05-14 19:48:01 +01:00
yar Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
zend Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
zip Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
zlib Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
zmq @link and @see tags should use https 2018-10-16 11:28:37 +02:00
.gitignore remove quality tools and redundant mapping 2018-12-11 17:35:31 +03:00
.travis.yml Let's move check-stub-map under tests folder 2019-06-25 17:31:03 +02:00
CONTRIBUTING.md Update requirements for PR requests 2018-04-24 17:46:00 +02:00
PhpStormStubsMap.php Add hand-picked changes from pr553 2019-06-26 15:26:31 +03:00
README.md Update instruction on how to update stub map 2019-06-26 12:43:08 +02:00
composer.json [WI-46976] Add stub map with its generation script 2019-06-21 20:56:32 +02:00
docker-compose.yml Patch docker-compose 2019-06-24 19:20:27 +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

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