PHP 5.0: Class name hints


PHP 5.1: array typehint


PHP 7.0: Scalar Type Declarations (v5)


PHP 7.0: Return type declarations


PHP 7.1: Nullable types


PHP 7.1: Void return type


PHP 7.2: Parameter type widening



<?php
class LibraryArticle
{
    public function getSlug(string $title) : void
    {
    }
}

class MyArticle extends Article
{
    public function getSlug($title) : void
    {
    }
}
    

Warning: Declaration of
    MyArticle::getSlug($title): void
    should be compatible with
    LibraryArticle::getSlug(string $title): void
    

<?php
class LibraryArticle
{
    public function getSlug(string $title) : void
    {
    }
}

class MyArticle extends Article
{
    public function getSlug($title) : void
    {
    }
}