Laravel 变量代替类名创建对象?
<?php
namespace App\Http\Controllers\Admin;
use App\Models\User;
class CommonController extends Controller
{
protected $table_name;
public function index()
{
$user = $this->table_name;
$userModel = new $user();
$rows = $userModel->all();
return view('admin.users.member-list', compact('users'));
}
}
我这个是父类控制器,然后子类继承,并且子类中设置属性$table_name
的值为"User"
,当前类可以使用$this->table_name
获取到"User"
值,我想使用$user
来代表类名(User),达到方法可以动态创建不同的类,在php原生态的方式中,这是可行的,但是在这里会提示User类没有找到。只有使用 new User()
才行
No Comments