我的laravel控制器中有以下几行代码:
public function getTags() {
$tags = DB::table('tags')->get();
/* convert Object to array */
$tagsArray = array();
foreach($tags as $tag) {
$tagsArray[$tag->tag] = $tag->tag;
}
return $tagsArray = json_decode(json_encode($tagsArray) , TRUE);
}
public function index() {
// $recentBlogPost = DB::table('Admin')->get();
// Auth::logout();
if (!(Auth::check())) {
return Redirect::to('login');
}
$tagsArray = getTags();
return view('admin.index')->with('tags' , $tagsArray);
}
现在我的代码的下一行出错:
$tagsArray = getTags();
我收到以下错误:
Call to undefined function App\Http\Controllers\getTags()
现在我在调用此函数的同一个控制器中定义了此函数,那么为什么我会收到未定义函数的错误?
答案 0 :(得分:2)
正确的语法是:
$tagsArray = $this->getTags();
当从对象上下文中调用方法时,伪变量$ this可用。 $ this是对调用对象的引用(通常是方法所属的对象
答案 1 :(得分:1)
尝试了
$tagsArray = $this->getTags();