Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings
This repository was archived by the owner on Dec 29, 2020. It is now read-only.

dunglas/phpdoc-to-typehint

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

54 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PHPDoc to Type Hint

Archived! This repository is now archived. Consider using PHP CS Fixer (and especially the phpdoc_to_param_type and phpdoc_to_return_type rules) or Rector instead.

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

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>

Your 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
  • PHP 7.1 nullable types (can be disabled with --no-nullable-types option)

Credits

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

Sponsor this project

 

Packages

No packages published

Contributors 7

Languages

Morty Proxy This is a proxified and sanitized view of the page, visit original site.