解析错误:语法错误,意外'['in

Parse error: syntax error, unexpected '[' in $results = [];

function class_uses_recursive($class)
{
    $results = [];

    foreach (array_merge([$class => $class], class_parents($class)) as $class)
    {
        $results += trait_uses_recursive($class);
    }

    return array_unique($results);
}

please help me

If you're using an older version of PHP (pre-5.4 I think), this syntax isn't supported:

$results = [];

You'd have to use the older version:

$results = array();

You will get this error for any PHP version below 5.4, as the short array syntax [] was not introduced until 5.4. You need to use array() to instantiate arrays in PHP 5.3.x and earlier:

function class_uses_recursive($class)
{
    $results = array();

    foreach (array_merge(array($class => $class), class_parents($class)) as $class)
    {
        $results += trait_uses_recursive($class);
    }

    return array_unique($results);
}

PHP docs on arrays here.

Array is initialised by

$results = array(); // use this


 function class_uses_recursive($class)
    {
        $results = []; //instead of this .

        foreach (array_merge([$class => $class], class_parents($class)) as $class)
        {
            $results += trait_uses_recursive($class);
        }

        return array_unique($results);
    }