服务器中的语法错误不在本地主机上

Syntax error in server not on localhost

我有这个link:

   <a href="{{url('/list')}}">List of all members</a>

这条路线:

Route::get('/list', 'NyfnController@list');

控制器方法:

public function list()
    {
        $users=User::orderBy('district_involved')->get();
        return view('list')->with('users',$users);
    }

但是,我得到了语法错误:

syntax error, unexpected 'list' (T_LIST), expecting identifier (T_STRING)

这在本地主机上工作正常,但在服务器上却不行。

可能您的本地主机是 运行 5.6.4> 并且您的网络服务器是 运行 7.*.

在php 7 中,列表方法不可用。如果您使用 PHPStorm,您会注意到 list 是 PHP 7(或更新版本)中的新方法。看看:http://php.net/manual/en/function.list.php#refsect1-function.list-changelog

我会建议你改变你的方法:

public function listUsers()
{
    $users=User::orderBy('district_involved')->get();
    return view('list')->with('users',$users);
}

Route::get('/list', 'NyfnController@listUsers');

碰巧 list 是保留字 (http://php.net/manual/en/function.list.php),实际上是一种语言结构,因此您不能使用该名称定义函数。使用您想要的任何其他(非保留)名称。