获取预期类型“对象”。在 PHP MVC 项目中发现 'void'.intelephense(1006) 问题。我在此处附上了相关的代码和源代码(youtube)。如果有人能解释发生了什么,我们将不胜感激。
有一个具有获取模型实例的功能的家庭 Controller :(我是如何编码的)
<?php
class Controller{
public function model($model){
require_once '../app/models/' . $model . '.php';
return new $model();
}
}
有这样的 User.php 类:(我是如何编码的)
<?php
class User{
public $name;
public function __construct()
{
}
}
有这样的家庭 Controller :(我是如何编码的)
<?php
class Home extends Controller{
public function index($name = ''){
$user = $this->model('User');
$user->name = $name;
echo $user->name;
}
public function test(){
echo 'test_function()';
}
public function get_user_name(){
}
public function model($model){
echo $model;
}
}
靠近$user->name = $name;和 echo $user->name;它显示了错误。 this is the screenshot 恐怕找不到问题。我认为这是模型的问题,但仍无法解决。我正在观看一个 youtube 视频系列并正在这样做。这是相关视频网址 youtube video编码为here,但我遇到了麻烦。有人可以解释为什么会发生这种情况以及错误在哪里吗?我想澄清一下这个 MVC 架构。
最佳答案
您还可以通过添加来定义您的变量
/**
*
* @var object $user
*/
甚至可能
/**
*
* @var User $user
*/
就在
$user->name = $name;
这应该会使错误消失。
关于php - 预期类型 'object' 。在 PHP MVC 项目中发现 'void' .intelephense(1006) 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70966341/