Skip to content
This repository was archived by the owner on Dec 29, 2020. It is now read-only.

dunglas/phpdoc-to-typehint

Repository files navigation

PHPDoc to Type Hint

phpdoc-to-typehint adds automatically scalar type hints and return types to all functions and methods of a PHP project using existing PHPDoc annotations.

Build Status Scrutinizer Code Quality

Warning: this project is an early stage of development. It can damage your code. Be sure to make a backup before running this command and to run your test suite after.

Please report any bug you find using this tool.

Install and usage

  1. Download the latest PHAR file
  2. Run php phpdoc-to-typehint.phar <your-project-directory>

You're project should have scalar type hints and return type declarations.

Before:

<?php

/*
 * @param int|null $a
 * @param string   $b
 *
 * @return float
 */
function bar($a, $b, bool $c, callable $d = null)
{
    return 0.0;
}

After:

<?php

/*
 * @param int|null $a
 * @param string   $b
 *
 * @return float
 */
function bar(int $a = null, string $b, bool $c, callable $d = null) : float
{
    return 0.0;
}

Features

Supports:

  • functions
  • methods of classes and traits
  • method definitions in interfaces
  • PHPDoc inheritance

Credits

Created by Kévin Dunglas. Sponsored by Les-Tilleuls.coop.