Go to file
Théo FIDRY f98d998762
Patch docker-compose
2019-06-24 19:20:27 +02:00
.idea Add run configuration for tests 2019-06-11 18:32:59 +02:00
Core Merge pull request #585 from kukulich/extensions3 2019-05-22 12:07:58 +03:00
Ev Move stub into module 2017-04-02 09:30:14 +02:00
FFI Add ffi extension support 2019-02-13 02:48:00 +03:00
PDO PDO::__construct default args 2019-03-02 14:16:56 +11: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 ReflectionReference (#607) 2019-05-29 12:41:55 +03:00
SPL Make SplFileObject::fputcsv() parameter name compatible with PHP documentation 2019-04-24 18:06:44 +02:00
SQLite Replace http with https in doc links 2018-08-13 16:39:18 +03:00
SaxonC Convert links to HTTPS 2018-10-20 20:17:18 +02:00
SimpleXML Revert "SimpleXML: better return annotation for xpath" 2019-04-26 14:30:48 +03:00
SplType Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
Zend OPcache @link and @see tags should use https 2018-10-16 11:28:37 +02:00
ZendCache WI-33237 split embedded stubs into modules 2017-03-07 14:52:15 +01: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 Update amqp.php 2019-05-27 14:06:48 +10:00
apache @link and @see tags should use https 2018-10-16 11:28:37 +02:00
apc Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
apcu Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
bcmath Update various @return's in bcmath based on PR feedback 2018-10-30 08:35:17 -05:00
bin Fix map 2019-06-21 21:11:51 +02:00
bz2 Use https for @link annotations (#367) 2018-08-13 14:15:36 +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 Change all other links available in HTTPS 2018-10-16 12:12:15 +02: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 new CURL constants introduced in PHP 7.3.6 2019-06-11 18:27:08 +02:00
date make strftime() $timestamp optional (#581) 2019-05-06 18:02:53 +03:00
dba Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
dom DOM: document nullable return types & properties (#615) 2019-06-16 22:04:35 +03:00
enchant Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
event Change all other links available in HTTPS 2018-10-16 12:12:15 +02:00
exif Update exif.php (#610) 2019-06-17 18:16:07 +03:00
fann moved fann, judy, mqseries to separate directories 2017-07-17 21:50:35 +03:00
ffmpeg WI-33237 split embedded stubs into modules 2017-03-07 14:52:15 +01:00
fileinfo Replace http with https in doc links 2018-08-13 16:39:18 +03:00
filter PHP 7.3 stubs update 2018-12-24 18:24:48 +03:00
fpm Fix missing return type of fpm_get_status() function 2018-12-17 09:38:54 +01:00
ftp Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
gd remove dup 2019-04-24 11:42:37 +10:00
gearman Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
geoip Added new functions of geoip 1.1.0 WI-45203 (#504) 2019-02-19 12:23:32 +03:00
gettext Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
gmagick Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
gmp Fixed GMP stub for PHP >= 5.6 2019-05-14 19:33:17 +01:00
gnupg Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
grpc Change all other links available in HTTPS 2018-10-16 12:12:15 +02:00
hash Fixed optional in hash_pbkdf2 declaration 2019-01-19 21:23:28 +01:00
http Update http3.php 2019-03-13 18:54:37 +01:00
ibm_db2 Changed the value type for db2_autocommit from bool to int 2018-11-22 15:21:59 -08: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 Change all other links available in HTTPS 2018-10-16 12:12:15 +02:00
imap Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
inotify @link and @see tags should use https 2018-10-16 11:28:37 +02:00
interbase Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
intl Fixed parent of IntlGregorianCalendar 2019-04-24 17:44:36 +02: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 Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
leveldb renamed folder for leveldb extension to a proper case 2019-05-24 17:53:26 +03:00
libevent Replace http with https in doc links 2018-08-13 16:39:18 +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 Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
mapscript Change all other links available in HTTPS 2018-10-16 12:12:15 +02:00
mbstring Add PhpDoc for MB_CASE_ constants since PHP 7.3 2019-03-29 19:24:26 +01:00
mcrypt @link and @see tags should use https 2018-10-16 11:28:37 +02:00
memcache @link and @see tags should use https 2018-10-16 11:28:37 +02:00
memcached Update Memcached::deleteMulti return type and description 2019-03-25 10:20:20 -03:00
meminfo Add ext-meminfo stub 2019-05-15 19:23:38 +02:00
meta Add expected arguments fpr yaml_emit 2019-05-15 12:55:05 +03:00
ming Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
mongo Change all other links available in HTTPS 2018-10-16 12:12:15 +02:00
mongodb Merge pull request #579 from timwhitlock/master 2019-05-06 12:00:34 +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 Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
mysql Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
mysql_xdevapi @link and @see tags should use https 2018-10-16 11:28:37 +02:00
mysqli default args and types for mysqli() 2019-02-26 10:53:26 +11:00
ncurses Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
newrelic Update newrelic.php 2018-09-21 17:45:40 +10:00
oauth @return should be omitted for __construct 2018-05-30 17:53:56 +02:00
oci8 Made return types of the oci8 functions more accurate 2018-11-22 13:32:32 -08:00
odbc Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
openssl fix openssl_encrypt docs 2019-02-16 16:42:10 +08:00
parallel Remove unused imports 2019-06-20 14:03:20 +02:00
pcntl Use https for @link annotations (#367) 2018-08-13 14:15:36 +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 Update pgsql.php (#611) 2019-06-16 21:13:07 +03:00
posix Replace http with https in doc links 2018-08-13 16:39:18 +03:00
pspell Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
pthreads Add pthreads stubs for addRef/delRef/getRefCount functions for Threaded class 2018-11-01 05:42:49 -05:00
radius @link and @see tags should use https (test for constants) 2018-10-16 12:05:21 +02:00
rar Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
rdkafka Add ext-rdkafka missing timestamp on Message 2019-05-22 17:12:08 +02:00
readline Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
recode Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
redis Add maxlength and approximate argument to Redis::xadd (#612) 2019-06-17 18:26:30 +03:00
regex Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
rrd Replace http with https in doc links 2018-08-13 16:39:18 +03:00
session add default args to session_set_save_handler 2019-02-22 19:25:50 +11:00
shmop Correct the type of shared memory identifiers 2018-08-22 21:19:17 +01:00
snmp Remove duplicate url scheme inside phpDoc blocks 2018-11-28 17:34:30 +01:00
soap fixing __soapCall() method signature (#619) 2019-06-20 01:52:46 +03:00
sockets Remove duplicate url scheme inside phpDoc blocks 2018-11-28 17:34:30 +01:00
sodium @link and @see tags should use https 2018-10-16 11:28:37 +02:00
solr Fixed an incorrect @return type of SolrClient::query 2018-12-29 17:29:11 +01:00
sqlite3 Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
sqlsrv Corrected parameter types for some sqlsrv functions 2019-01-23 20:10:40 -08:00
ssh2 fix return type param 2018-09-27 11:23:43 +02:00
standard Add alternative setcookie() signature (#609) 2019-06-17 19:23:01 +03:00
stomp Add stubs for pecl-stomp php extension 2019-04-26 18:08:43 +01:00
suhosin Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
superglobals Change all other links available in HTTPS 2018-10-16 12:12:15 +02:00
svn Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
sybase Use https for @link annotations (#367) 2018-08-13 14:15:36 +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 Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
sysvshm Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
tests Tweaks 2019-06-21 21:05:52 +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 Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
win32service add more constants 2017-08-30 11:49:32 +02:00
wincache @link and @see tags should use https 2018-10-16 11:28:37 +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 @link and @see tags should use https 2018-10-16 11:28:37 +02:00
xml Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
xmlreader Use https for @link annotations (#367) 2018-08-13 14:15:36 +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 Use https for @link annotations (#367) 2018-08-13 14:15:36 +03:00
yaf Update yaf_namespace.php 2019-04-03 16:46:30 +08:00
yaml Fixed signature of yaml_emit() 2019-05-14 19:48:01 +01:00
yar These constants are not case insensitive, get rid of the third argument 2019-04-03 09:22:36 +08:00
zend WI-33237 split embedded stubs into modules 2017-03-07 14:52:15 +01:00
zip Fix error returns 2019-02-12 16:32:12 +01:00
zlib PHP 7.3 stubs update 2018-12-24 18:24:48 +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 Tweaks 2019-06-21 21:05:52 +02:00
CONTRIBUTING.md Update requirements for PR requests 2018-04-24 17:46:00 +02:00
PhpStormStubsMap.php Update generated map 2019-06-21 21:16:33 +02:00
README.md Fix the command to run tests 2019-06-11 18:14:13 +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

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/vendor/bin/phpunit /opt/project/tests/

License

Apache 2