假设我有这段代码:
class UserController extends Controller
{
protected $test;
public function __construct()
{
$this->test = new Test();
}
// first call this func
public function add_name()
{
$this->test->add_name('name1')
return $this->test->get_name();
}
// then this one
public function show_name()
{
return $this->test->get_name();
}
}
class Test
{
protected $name;
public function get_name()
{
return $this->name;
}
public function add_name($name)
{
$this->name = $name;
}
}
因此,当我在UserController
(第一类)中的add_name()之后调用show_name()函数时,不返回任何内容。我的代码问题是什么?
(当调用add_name()函数时,它可以正常工作)
答案 0 :(得分:0)
在Laravel中,在Controller文件中编写单独的类是不好的做法。您必须在app / Classes目录中创建单独的类文件。比如说你的班级,app / class里面的Class_Test.php。在您的Controller文件中,您需要包含类的命名空间。您的控制器功能应该是。
使用App \ Classes \ Class_Test;希望这能帮到你。
类UserController扩展Controller {
public function add_name() { //call the class function Class_Test::add_name('name1'); } // then this one public function show_name() { Class_Test::get_name(); }
}