我正在尝试创建一个简单的函数,只返回查询的第一组结果,但是我收到以下错误:
Parse error: syntax error, unexpected '[' in /Users/MAMP_SITES/website/classes/DB.php on line 78
以下是导致错误的代码:
$user = DB::getInstance()->get('users', array('username', '=', 'rich'));
if(!$user->count()) {
echo 'No user';
} else {
foreach($user->results() as $user) {
echo $user->first()->username;
}
}
以下是DB.php的相关功能:
public function results() {
return $this->_results;
}
public function first() {
return $this->results()[0]; // This is line 78 where the error is
}
我从一个可能有点过时的教程中获取此代码。
答案 0 :(得分:1)
数组解除引用仅适用于最新的PHP版本。要返回第一个数组项,可以使用current()函数。
return current($this->results());
答案 1 :(得分:0)
您可以尝试:
public function first() {
$results = $this->results();
return (sizeof($results)>0 ? $results[0] : null);
}
OR
public function first() {
return current( $this->results() );
}